[Special Report] 악성코드, 문서를 파고들다
| <연재 목차> 1. 악성코드, 문서를 파고들다(이번 호) 2. 위기 관리(Risk Management) 측면에서의 보호 방안(2012년 6월호)
확장자가 EXE나 DLL 같은 실행 파일이라면 으레 악성코드가 아닌지 한 번 더 살펴볼 만큼 사용자들은 악성코드에 단련돼 있다. 하지만 공격자는 늘 사용자를 한 발 앞서는 것인가. 이제 공격자들은 아무런 의심 없이 사용하는 MS 워드나 PDF, 플래시 같은 비실행 파일에 악성코드를 심어 공격하고 있다. 뉴스거리가 되는 이슈뿐만 아니라 자주 이용하는 패스트푸드점의 홍보 메일이라는 탈을 쓰고 나타나기도 한다.
|
사용자 컴퓨터에는 오래 전부터 다양한 취약점이 존재하여 왔다. 과거에는 운영체제 자체의 취약점을 이용하는 악성코드가 성행했으나, MS08-067 서버 서비스 취약점을 기점으로 컨피커웜(W32/Conficker.worm)이 다소 주춤하기 시작했다. 그만큼 운영체제 자체의 보안성이 예전보다 강화되었다는 반증이기도 하다.
이 때문일까? 공격자는 이제 비실행 파일(Non-PE)을 이용하는 공격 기술을 집요하게 파고들고 있다. 비실행 파일을 처리하는 과정에서 발생되는 응용 프로그램 취약점을 이용하는 악성코드 감염 사례가 하루가 멀다 하고 보고되고 있다.
|
벤더
|
대상 제품
|
취약성 정보
|
|
Microsoft
|
Office(Word, Excel, PPT 등)
|
CVE-2010-0806(MS10-018)
CVE-2011-1255(MS11-050)
CVE-2012-0003(MS12-004)
|
|
Adobe
|
Flash Flayer, PDF Reader 등
|
CVE-2012-0754
CVE-2011-2140
CVE-2011-2110
CVE-2011-0611
|
|
Oracle
|
Java
|
CVE-2011-3544
|
[표 1] 악성코드 유포 시 사용되는 주요 취약점들
악의적인 비실행 파일이 전파되는(혹은 기업 내부 네트워크로 유입되는) 주요 감염 경로와 기법은 [그림 1]과 같다.
|
악성코드 유포 기법
|
공격 기법(Attack Method)
|
|
• 사회공학적 기법(Social Engineering) : 관심 주제 선정
• 불특정 다수를 대상으로 한 최근 이슈 관련 정보
• 특정 기관, 기업을 대상으로 한 맞춤형 정보
|
• 악의적인 비실행 파일 생성: javascript, java applet, doc/xls/ppt, swf/pdf 등(비실행 파일의 주요 기능은 파일 내부에 포함한 악성 실행 파일을 구동하거나, 혹은 외부의 악성 실행 파일을 다운로드 & 실행하게 함)
• 악성 비실행 파일이 업로드된 악의적인 웹 사이트 구축(이 과정에서, 정상적인 웹 사이트를 침해한 후 악성코드 경유·유포지로 활용 가능)
|
|
위협 전파 및 감염
|
감염 영향
|
|
예)
• 이메일 전파(악성 URL 혹은 악성 비실행 파일 첨부)
• SNS 전파(블로그, 트위터, 페이스북, 메신저 등 빠른 확산 가능)
• 사용자 개입에 의한 감염(클릭 혹은 웹 사이트 방문)
|
보안 프로그램 무력화
• 공격자 C&C(Command & Control) 서버 접속 및 명령 실행
• 개인 정보 유출(계정 정보 등)
• 중요 문서 정보 탈취(문서 파일 등)
|
[표 2] 비실행 파일의 감염 기법과 영향
[그림 1] 비실행 파일의 악성코드 감염 경로
사회공학적 기법(Social Engineering) 악용
정치, 경제, IT, 연예 등 여러 분야에서 이슈가 될 만한 기념일들은 악성코드를 유포하는 데 좋은 무기로 사용된다. 사용자가 믿을 수밖에 없는 내용과 함께 악성코드란 사실을 인지할 수 없도록 실행 파일이 아닌 웹이나 메일을 통해서 문서 또는 링크 형태로 유포되기 때문에 무심코 열람하여 악성코드에 감염되고 있다.
이러한 ‘사회공학적 기법’을 이용한 악성코드 유포 관련 최근 사례로는 티벳 봉기 기념일, 2012년 런던올림픽, 북한 로켓(광명성 3호) 발사, 특정 지역 또는 기관, 기업 등의 이슈를 이용한 타깃 공격 등이 있다.
문서 파일에 악성코드가?
비실행 파일 악성코드의 공통점은, 사용자들이 많이 사용하는 응용 프로그램(MS 오피스, 어도비 플래시 플레이어, 어도비 리더 등)의 취약점을 악용한 문서 파일로 위장했다는 점이다. 만약 악성코드가 실행 파일 확장자(EXE나 DLL 같은)였다면 사용자가 한 번쯤은 의심했을 테지만 사회적으로 이슈가 되는 주제들을 포함한 문서 파일 형태라면 얘기가 달라진다. 어느 누가 문서 파일에 악성코드가 있으리라 상상이나 했겠는가?
악성코드는 운영체제를 가리지 않는다
최근 뉴아이패드(New iPad)의 출시와 더불어 전 세계 사용자들로부터 많은 사랑을 받고 있는 애플 제품들은 그 동안 다른 운영체제 환경보다 위협 요소가 적다는 이유로 안전할 것이라고 인식돼 왔다.
하지만 지난 해부터 Mac을 겨냥한 악성코드가 꾸준히 등장하고 있으며 SNS를 통해 유포되어 많은 Mac OS 사용자들이 악성코드에 감염되었다.
최근 중국과 영토권 분쟁으로 이슈가 되고 있는 티벳과 관련하여 자바 취약점(CVE-2011-3544)을 이용해 티벳 NGOs(Non-governmental Organizations)를 겨냥한 악성코드가 유포되었다. 주요 기능은 C&C 서버와 통신을 하고 외부에서 전달된 명령을 수행하는 것이었다. 이 Tibet.A는 OS X뿐만 아니라 윈도우 등 다수의 운영체제를 감염시킬 수 있는 크로스 플랫폼 악성코드이다.
[그림 2] 운영체제 확인 코드
최신 자바 취약점(CVE-2012-0507)을 악용하여 Flashback 변종 악성코드가 유포되어 55만 대의 Mac 사용자가 감염되기도 했다.
과연 세상에 안전한 운영체제가 존재할까?

[그림 3] Flashback 악성코드 감염 분포(출처: Dr.WEB)
최근 악성 비실행 파일 사례
매년 1~2월은 채용 및 인사 이동이 활발한 시기이다. 이러한 때를 노려 이력서로 위장한 악성 메일이 유포되었다. 일명 “박XX이력서.doc”(DOC/Dropper). 해당 워드(Doc) 파일은 RTF(Rich Text Format) 파일이며 RTF 파일 포맷 취약점을 이용하여 시스템을 감염시킨다.

[그림 4] 이력서로 위장한 악성코드의 예
국내 패스트푸드 업체로 위장한 홍보 메일에 악성코드 다운로드 링크가 포함되어 유포된 사례도 보고되었다. 메일 본문에는 업체 홍보 내용과 악성코드 유포 URL이 포함되어 있었고, ‘프리미엄 환불 서비스’라는 호기심을 유발하는 문구로 사용자를 현혹하고 있었다.

[그림 5] 패스트푸드 업체 홍보 메일로 위장한 악성코드
이렇게 구축된 악의적인 웹 사이트를 클릭하거나 혹은 무심결에 방문하면, [그림 6]과 같은 Web Exploit Toolkit Tree를 만나게 된다. 공격자는 단 하나의 무기만 준비하는 것이 아니다. 10개 내외의 다양한 무기(공격 코드)를 동원하여, 어느 한 사용자도 놓치지 않게 만반의 준비를 하고 있다.

[그림 6] Web Exploit Toolkit Tree
‘Iran’s Oil and Nuclear Situation.doc’라는 이름의 악성 워드 문서가 유포된 사례를 보자. 파일 내부에 포함된 어도비 플래시 파일은 특정 파일을 드롭(Drop)한다.

[그림 7] 특정 파일의 드롭 기능을 수행하는 악성코드
2012년은 4년간 기다려온 올림픽이 개최되는 해이다. 국제적인 행사이니만큼, 사회적인 관심도 높을 수밖에 없다. 물론, 악성코드 제작자들도 많은 관심을 가지고 있을 것이다. 올림픽뿐만 아니라 사회적인 이슈가 생길 때마다 악성코드 유포에 적절히(?) 이용하니 말이다. 워드 취약점(CVE-2010-3333/MS10-087: RTF Stack Buffer Overflow Vulnerability)을 악용한 런던올림픽 관련 스팸 메일이 유포된 것이 확인되었다.

[그림 8] 워드 취약점을 악용한 런던올림픽 관련 악성코드(출처: Trend Micro’s Malware Blog)
아무리 강조해도 지나치지 않은 ‘보안 업데이트’
사용자가 보안 업데이트를 게을리하면 시스템 취약점을 통해 악성코드에 감염된다. 호기심을 자극하는 제목의 메일에 대해 한 번 더 신중하게 확인하도록 하고, 지속적인 보안 업데이트를 통해 시스템에 존재하는 취약점을 없애서 보안 위협으로부터 멀어지도록 하자.
▶ 마이크로소프트 업데이트
http://update.microsoft.com
▶ 어도비 플래시 플레이어 업데이트
http://get.adobe.com/kr/flashplayer/
▶ Java(JRE) 업데이트
http://www.java.com/ko/
다음 호에서는 1부에서 언급한 최근 응용 프로그램 취약성 정보에 대해 상세히 살펴보고, 기업 정보보호 담당자들이 필히 확인해야 할 ‘위기 관리(Risk Management) 측면에서의 응용 프로그램 취약성 보호 방안’을 제시할 예정이다. 이를 통해 취약점과 악성코드, 그리고 위기 분석(Risk Analysis)을 활용한 보안 위협 관리 라이프사이클(lifecycle)에 대해 알아보겠다.@
- AhnLabA-FIRST 김지훈 팀장