| 수많은 레지스트리 키들이 COM 하이재킹에 노출된 상태 | 2018.08.01 |
소프트웨어 간 상호작용 돕는 COM, 하이재킹 하면 공격 효과 증대
공격자들 사이에서 인기 올라가는 중...레지스트리 모니터링 필요 [보안뉴스 문가용 기자] 마이크로소프트 컴포넌트 객체 모델(Component Object Model, COM) 하이재킹이라는 공격 수법이 업그레이드 되어 나타났다. 이로써 공격자들은 좀 더 은밀하게 시스템 내에 머무르며 각종 공격을 할 수 있게 되었다. ![]() [이미지 = iclickart] 마이크로소프트 COM인 윈도우에 통합되는 시스템으로, 소프트웨어 요소들의 상호작용을 원활하게 해주는 기능을 가지고 있다. COM은 윈도우 레지스트리에서 관리되는데, 이 레지스트리에는 팬텀 COM(Phantom COM)이라는 객체를 참조하는 키가 포함되어 있다. 팬텀 COM은 하드드라이브에서 삭제하고 없어진 파일들을 참조할 수 있으며, 오래된 애플리케이션과 예전 프로그램들을 포함할 수 있다. 파일이 하드드라이브에서 삭제돼도 레지스트리 키는 계속해서 그 파일을 참조한다. 그렇다면 공격자가 신뢰받는 애플리케이션의 팬텀 COM 객체 ID를 하이재킹 해서 악성 파일을 가리키게 한다면, 운영 체제에 임의의 파일을 로딩시키고 실행할 수 있다는 말이 된다. COM 객체 ID(CLSID)가 정상 객체로서 등록만 되어 있다면 악성 파일도 정상 파일로 보이며, 보안 툴들을 통과할 수 있게 된다. 실제로 보안 툴들 대다수가 COM 하이재킹 공격을 탐지하지 못한다. explorer.exe나 chrome.exe, svchost, iexplore 등 보통의 윈도우 프로세스에만 해도 연결된 CLSID가 수백개가 넘으며, 하루에도 CLSID가 수두룩하게 생성되니, 어지간한 시스템으로는 이를 좇아갈 수가 없기 때문이다. COM 하이재킹 기법은 자동실행(autorun)을 건드리지 않고 시스템 내에서 오랜 시간 조용히 남아있고자 하는 공격자들 사이에서 인기가 높아지고 있는 방법이라고 보안 업체 사이버비트(Cyberbit)의 메이어 브라운(Meir Brown)은 설명한다. 사이버비트는 COM 하이재킹에 취약한 레지스트리 키를 수백 개 찾아냈다고 한다. 이는 조사를 시작할 때 예상했던 것보다 훨씬 높은 숫자다. “COM 하이재킹이란 기법을 사용하는 공격자들이 있었다는 건 조사 이전에도 알고 있었습니다. 실제로 이를 활용한 사례들도 많이 봤고요. 그렇지만 이렇게까지 많은 레지스트리 키가 COM 하이재킹에 취약한 줄은 몰랐습니다.” 메이어의 설명이다. “COM 하이재킹은 해커들이 시스템에 오래 남아있을 수 있게 해주는 전략 중 하나로, 숨어 있기에 꽤나 효과적인 방법입니다.” 온라인에서 레지스트리 키 사냥하기 전문가들은 공격자들의 입장에서 COM 하이재킹 실험을 시작했다. 그리고 팬텀 COM 객체를 장악하려고 시도했다. 그런 후 참조된 파일을 찾아낼 수 없거나 로딩할 수 없었던 레지스트리 키들을 매핑했다. 연구원들은 그 키들을 사용해 가짜 DLL을 로딩했다. “너무 간단하게 성공했습니다. 성공을 했음에도 기분이 별로 좋지 않은 경험은 처음이었습니다.” 사이버비트의 전문가들은 자신들이 만든 DLL을 로딩하고 실행시키는 데 성공했다. 당연히 시스템이 보기에는 ‘정상적인 상황’에서였다. “아무런 부작용 없이 객체들을 전부 로딩하는 데 성공했습니다.” 키들을 온라인에서 찾기 시작하면서 사이버비트의 전문가들은 다양한 샘플들을 찾아낼 수 있었다. “COM 하이재킹과 팬텀 COM 객체 로딩 기법에 꼼짝없이 당할 수밖에 없는 키들이 너무나 많았습니다. 심지어 공격 방법이 어렵지도 않습니다. 코드 주입 과정도 없기 때문에 보안 솔루션에 탐지되는 경우도 드물고요.” 메이어는 “COM 하이재킹은 굉장히 위험한 전략”이라고 설명한다. “정상적인 사용자의 권한을 사용하고, 시스템을 리부팅 하지 않으니까요. 그래서 현재 공격자들 사이에서 인기가 높아지고 있기도 합니다. 방어를 위해서 조직들은 시스템 내 레지스트리 역시 면밀히 지켜봐야 할 것입니다.” 사이버비트는 “현재까지 찾아낸 취약한 레지스트리 키가 수백 개 정도 되지만, 실제로는 천 단위에 이를 것”으로 보고 있다. 3줄 요약 1. COM은 소프트웨어 간 상호작용을 돕는 요소로 레지스트리에서 관리됨. 2. COM을 하이재킹하면 ‘정상적인 상황’에서 악성 파일을 로딩시킬 수 있음. 3. 찾아보니 이 공격에 취약한 레지스트리 키가 수백~수천 개에 달함. [국제부 문가용 기자(globoan@boannews.com)] Copyrighted 2015. UBM-Tech. 117153:0515BC |
|
|
|