목차 1 Ⅰ. 개요 1. 사고발생 2. 감염확산 3. 민 관협력대응 Ⅱ. 감염증상 1. 국내사고발생현황 2. 감염증상 3. 감염시스템특징 Ⅲ. 워너크라이상세분석 1. 구성요소 2. 동작원리 3. SMB 취약점 (CVE-2017-0144) 분석 Ⅳ. 해커그룹연관성 1. 해외보안업체동향 2. 연관성분석 3 4 6 7 11 12 13 17 21 22 23 53 79 80 83 [ 부록 ] 랜섬웨어 (WannaCry) 예방대국민행동요령 87
개요 Ⅰ. 개요 3
Ⅰ. 개요제 4 장. 글로벌사이버위협동향 1. 사고발생 2017년 5월 12일 ( 한국시간 ), 全세계를랜섬웨어의공포로몰아넣을만한대규모사이버공격이발생하였다. 이번랜섬웨어의정식명칭은 WannaCryptor로워너크라이 (WannaCry) 또는 WCry 라는별칭으로불리며, 전세계 150여개국에서최소 30만대이상이컴퓨터시스템들이해당랜섬웨어로인해피해를입었다. 최초사고는영국과스페인등에서발생하여전세계로확산된것으로알려졌다. 영국은잉글랜드와스코틀랜드의국민복건서비스 (NHS) 산하 48개의의료기관이감염되어진료에차질을빚었으며, 스페인은대형통신업체인텔레포니카의내부시스템들이감염되었다. 중국은출입국관리소를비롯하여각종기업 기관 3만여개와대학등 4천여교육기관이피해를입었다. 러시아는정부기관인내무부컴퓨터를포함하여다수의공공기관에서피해가보고되고있다. 일본은철도회사인 JR 히가시니혼이감염되어신칸센예약서비스가중단되었으며, 히타치, 이온몰, 카와사키상하수도국, 오사카시청등다수의기업 기관이감염되었다. 워너크라이가최초발견된것은 2017년 2월이지만, 이번사고에서사용된워너크라이의특징은美 NSA가개발한 EternalBlue 취약점이해커들에의해유출된후악용되어윈도우즈통신프로토콜중하나인 SMB* 의취약점 (CVE-2017-0144) 을통해랜섬웨어가스스로주변으로자체전파할수있다는점이다. 이점이전세계로빠르게확산될수있었던주요요인으로손꼽힌다. * SMB(Server Message Block) : 파일ㆍ장치를공유하기위해사용되는통신프로토콜 4
그림 1-1. 워너크라이랜섬웨어감염국가 개요 워너크라이의최초유포경로는아직밝혀지지않았다. 하지만스피어피싱 * 또는해킹된웹사이트 ** 방문으로감염된후주변국가로확산및전파된것으로추정하고있다. * 메일에첨부된바로가기악성코드또는파일 (.lnk 등 ) 을통해감염 ** 이용자가많이방문하는웹사이트를해킹후악성코드를은닉시켜놓는해킹기법 5
Ⅰ. 개요제 4 장. 글로벌사이버위협동향 2. 감염확산 전세계적으로빠르게감염이확산된이유는웜 (Worm) 형태와유사하게자기자신을복제하여네트워크로전파하기때문이다. 3장악성코드상세분석 에서자세히설명하겠지만, 워너크라이랜섬웨어는임의의 IP를생성 ( 로컬네트워크및인터넷 ) 한후해당 IP 대상으로 SMB 포트 (445) 에대한스캔을하여취약점이존재할경우자기자신을복사및실행시키는과정을반복하는방식으로감염을확산시킨다. 랜섬웨어에감염된시스템 ( 윈도우운영체제 ) 은특정확장자를가지는내부파일들이.WNCRY로변경되고파일내용이암호화되며, 감염시스템화면에안내문구를표시한다. 워너크라이랜섬웨어는기존의랜섬웨어와다르게 OS 취약점을이용하기때문에전파가빠르게진행되었다. 영국의한보안관계자가워너크라이전파를무력화할수있는킬스위치를찾아워너크라이확산이잠시주춤하였으나, 다음날인 5월 14일킬스위치가없는워너크라이 2.0 버전이등장하였고이때문에감염이줄어들지않았다. 6
3. 민ㆍ관협력대응 개요 5 월 13 일랜섬웨어사태직후과학기술정보통신부 ( 이하과기정통부 ) 와한국인터넷진흥원 ( 이하 KISA) 는 118 센터를통해국내피해관련상담 문의를접수하였으며, 통신사 백신업체등과함께민ㆍ관랜섬웨어 비상대응체계를구성 운영하였다. 5월 14일 18:00부로사이버위기경보단계를관심에서주의로상향하고청와대 ( 국민소통수석 ), 과기정통부 ( 정보보호정책관 ) 에서는관련사안에대한브리핑을하였다. 이후해외에서발생한대규모피해가국내에서도발생하지않게하기위해대국민대상으로대응요령안내에힘쓰는한편워너크라이감염등에대한분석및기술지원을실시하고관련정보를공유했다. 그림 1-2. 랜섬웨어브리핑 (5.15) 7
Ⅰ. 개요제 4 장. 글로벌사이버위협동향 워너크라이사고시간대별대응현황 그림 1-3. 워너크라이사고에대한 KISA 시간대별대응현황 (13, 14 일 ) 14 일 PM (18:00) 사이버위기경보단계상향 ( 관심 -> 주의 ) PM (18:50) 대국민행동요령포털 ( 네이버, 다음 ) 게시, 통신사보안앱을통한공지, 보호나라공지, CISO 대상문자및메일발송등 PM (16:14) 대국민행동요령홍보자료배포 118 센터를통한접수및 KISA 원격기술지원실시 PM (15:58) MS 긴급보안패치 보안공지 PM (16:28) ISP, MSO, IDC 고객대상 445 포트차단현황파악 AM (11:59) SMB 취약점을이용한랜섬웨어주의권고 보안공지 PM (15:58) 국내주요기업 (900여개) 대상랜섬웨어주의안내메일송부 13 일 랜섬웨어확보및 KISA 자체초동분석 AM AM (09:00) 비상대응체계운영 (06:00) 해외 74개국연쇄공격확인 (08:18) AM 최초국내피해사고확인 (OO병원) 단발이벤트 지속이벤트 8
국내외 랜섬웨어피해확인및긴급보안권고실시 (5.13 06:00~11:59) 해외 74개국사이버공격언론보도확인 (06:00) 및국내피해사례확인 (08:18, OO 병원 ) 에따른비상대응체계구성 (09:00) 개요 랜섬웨어확보및자체초동분석을실시 (09:00), SMB 취약점을이용한랜섬웨어주의권고 보안공지실시 랜섬웨어주의관련대국민홍보실시 (5.13 15:58~21:18) 국내주요기업대상랜섬웨어부의안내메일발송 (15:58) 및 MS 긴급보안패치사항보호나라공지 (21:18) 118 상담센터로상담 신고접수된기업에대한원격기술지원및침해사고조사실시 ( 계속 ) 대국민행동요령보도자료배포및홍보실시 (5.14 16:14~18:50) 랜섬웨어관련대국민행동요령권고보도자료배포 (16:14) 및포털등홍보실시 (18:50) 방송 35건, 조 석간 165건, 통신 온라인매체 648건등 (5.15~5.17) 포털 ( 네이버, 다음 ) 메인페이지, 보호나라, 스마트폰보안앱 (T가드, 알약, 후후앱 ), 백신사등에대국민행동요령게시 보호나라 600만, 포탈 380만행동요령조회 국내주요기업 (900여개) 및 CISO(6,700여명 ) 에랜섬웨어긴급주의권고 사이버위기경보단계상향 ( 관심 -> 주의 ) 및보도자료배포 (5.14 18:00) 및 KISA 비상근무확대 < 분석및기술지원 > 국내 외랜섬웨어악성코드 246개확보및분석 1차 : 48개, 2차 180개, 3차 334개 위분석결과를바탕으로국내백신社 ( 하우리, 안랩, 이스트시큐리티, 잉카인터넷 ) S/W에 WannaCry 랜섬웨어패턴전달및업데이트지원 < 정보공유 > 국외 CERT, 국내 외인텔리전스로부터수집된악성코드, C&C 등의정보를 C-TAS(161개기관참여 ) 를통해정보공유 9
Ⅰ. 개요제 4 장. 글로벌사이버위협동향 그림 1-4. 랜섬웨어사태로인한해외피해사례 ( 출처 : MBC 뉴스 ) 영국등해외에서는이번랜섬웨어로인하여피해가컸으며, 상당수해외정부기관및시스템들의 서비스등이중단되기도하였다. 일부보안전문가들은국내에서도 5 월 15 일을월요일블랙먼데이라고칭하며, 대규모랜섬웨어감염 사고가발생할것으로예상하였으나상대적으로국내에서는이번워너크라이와관련된심각한상황이 발생하지않았다. 그림 1-5. 워너크라이피해가상대적으로적음 ( 출처 : 이데일리 ) 국내에서워너크라이로인한피해가적은것은랜섬웨어가발생한환경적ㆍ시간적요인등여러가지 이유가있으나, 앞에서언급한것과같이 KISA 와민ㆍ관이하나가되어선제적으로대응한것이가장 큰요인으로꼽힌다. 10
감염증상 Ⅱ. 감염증상 11
Ⅱ. 감염증상제 4 장. 글로벌사이버위협동향 1. 국내사고발생현황 다수의해외국가에서워너크라이감염사고가다수발생했던것과달리국내에서는일부감염사고만언론에보도되었다. 이는 KISA의대국민홍보단행등발빠른대처로인해피해유발가능성을감소시켰으며, 신고된사안에대해 KISA가적시에조치를취하여주변으로확산되는것을막을수있었다. 다음은 KISA의워너크라이대응이력이다. 그림 2-1. 국내워너크라이감염사고타임라인 순번 피해기관 피해일시 1 OO대학교병원 ( 의료 ) 5.13 08:18 2 OO약품 ( 의료 ) 5.13 15:53 3 OO자동차 ( 교통 ) 5.13 16:11 4 OO교회 ( 종교 ) 5.13 17:57 5 OO( 통신 ) 5.13 19:35 6 OO정형외과 ( 의료 ) 5.14 12:53 7 OO방송 ( 방송 ) 5.14 17:47 8 OO대학교 OO실험실 ( 교육 ) 5.14 19:16 9 OO영화 ( 미디어 ) 5.15 12:15 10 주식회사OO( 식음료 ) 5.15 13:47 11 OO시대중교통과 ( 교통, 공공 ) 5.15 12:24 12 OO장애인종합복지관 ( 복지 ) 5.15 14:09 13 OO( 통신 ) 5.15 14:10 14 OO파인더 ( 유통 ) 5.16 09:11 15 OO( 쇼핑몰 ) 5.16 16:30 16 OO대학교 ( 교육 ) 5.16 18:38 17 OO사 ( 출판 ) 5.18 09:39 18 OO공과대학교 ( 교육 ) 5.18 11:04 19 ( 사 ) 한국OO학회 ( 학회 ) 5.18 15:14 20 OO쇼핑몰 ( 쇼핑몰 ) 5.18 15:17 21 국제OO대학교 ( 교육 ) 5.21 12:21 12
상기분석한시스템들과신고된사고를살펴보면, 워너크라이랜섬웨어로인해피해를입은시스템은국내에서는윈도우즈계열, 그중윈도우즈서버 2008, 윈도우즈 7 및윈도우즈 XP 운영체제가주로피해를입은것으로확인된다. 또한각시스템들은공통적으로 SMB가활성화되어있었으며, MS 3월보안패치는이루어지지않았다. 2. 감염증상 감염증상 워너크라이랜섬웨어에감염되면, 감염시스템內그림, 문서등의파일들이.wncry 확장자로변경된다. 변경된파일은원래의정보가암호화되어확인하거나실행하지못한다. 그림 2-2. 워너크라이랜섬웨어에감염되어파일들이암호화된상태 13
Ⅱ. 감염증상제 4 장. 글로벌사이버위협동향 감염시스템의바탕화면은아래와같이감염된사실을고지하는문장이담긴이미지로변경된다. 그림 2-3. 랜섬웨어감염시변경되는배경화면 변경된바탕화면이미지의내용은백신이나기타의이유로랜섬웨어감염안내창 ( 랜섬노트, @WannaDecrypter@.exe) 을실행하는프로그램이삭제되었으니해당프로그램을복구하라는의미이다. 일부워너크라이변종에따라서는 랜섬노트 (@WannaDecrypter@.exe) 라불리는이랜섬웨어안내문프로그램이실행되어도위와같은바탕화면이표시되는경우가있다. 14
바탕화면문구번역 이런, 당신의중요한파일이암호화되었다. 이텍스트가보이지만 "Wanna Decrypt0r" 라는이름의창을보지못한경우, 백신프로그램이나당신이삭제하였을가능성이있다. 파일을복호화하고싶은경우복호화프로그램을실행시켜야한다. 감염증상 아무폴더에나들어가서 "@WanaDecrypter@.exe" 로명명된파일을찾거나백신검역소에서파일을복원하고프로그램의안내에따르시오. 이후, 복구방법을안내하는랜섬노트가팝업창으로표시된다. 그림 2-4. 워너크라이랜섬웨어감염을알리는감염안내창 15
Ⅱ. 감염증상제 4 장. 글로벌사이버위협동향 랜섬노트 에는비트코인주소, 해커가요구한금액 ($300), 결제유효시간등이표시된다. 최초실행시 입금해야하는금액은 $300 이지만, 3 일이지나면 $600 로늘어나며 7 일이지나면아예파일복구가 불가능하게된다. 실제, 비트코인을지불하여도암호화된파일이풀릴가능성은매우낮다. 워너크라이랜섬웨어의경우수백개의변종이발견되었으며, 해커가수동으로복호화키를전송하는방식을사용하기때문이다. 또한워너크라이변종상당수가몸값을어떤 PC에서지불하였는지에대한식별정보가없으며, 자동으로복호화가되지않는다. 16
3. 감염시스템특징 KISA 에서분석한국내의랜섬웨어에감염된피해시스템들은모두 SMB( 포트번호 445) 서비스를 실행하고있었으며, SMB 취약점보안업데이트또한적용하지않은상태였다. 그림 2-5. 네트워크연결정보 감염증상 17
Ⅱ. 감염증상제 4 장. 글로벌사이버위협동향 감염된시스템은 SMB 취약점에의해악성코드가설치ㆍ실행되었으며, 악성코드 (mssecsvc.exe, tasksche.exe*) 가 윈도우서비스 ** 로등록되어있었다. * mssecsvc.exe : 他시스템의취약점스캔및암호화악성코드드랍퍼 tasksche.exe : 파일암호화악성코드드랍퍼 ** 시스템이재부팅시악성코드가자동적으로구동될수있도록설정 그림 2-6. 악성코드 (mssecsvc.exe, tasksche.exe) 의서비스등록 18
또한, 감염된시스템에서 mssecsvc.exe 악성코드가자신의네트워크에있는타시스템에취약점 스캔을하려는시도를확인할수있다. 그림 2-7. 악성코드 (mssecsvc.exe) 의他시스템취약점스캔공격화면 감염증상 그림 2-8. 피해시스템內악성코드 (tasksche.exe, @WanaDecryptor@.exe) 실행 19
Ⅱ. 감염증상제 4 장. 글로벌사이버위협동향 tasksche.exe 악성코드는 @WanaDecryptor@.exe.lnk 파일이생성된후, 시스템의 rundll32.exe 에 의해 @WanaDecryptor@.exe 이실행된다. 워너크라이의경우다양한변종이존재하여조금씩차이가있을수있겠지만, 2017 년 5 월 13 일경 KISA 에서분석한시스템들에서는공통적으로다음과같은파일들이발견되었다. 표 2-1. 워너크라이랜섬웨어생성위치 파일명위치기능 mssecsve.exe tasksche.exe C:\Windows 워너크라이메인악성코드 ( 취약점스캔및전파, 암호화악성코드설치및실행 ) 파일암호화악성코드드랍퍼 43 종파일 C:\ProgramData\ 랜덤생성폴더 [vikdtyvpdqxuqx993] 피해시스템의암호화관련공개키및비트코인, Tor 네트워크설정파일, 악성코드감염관련안내문구등저장 발견된악성코드수와디렉토리위치는변종이나감염시스템에따라상이할수있으며, 생성된폴더명의 [ 랜덤생성폴더 ] 는시스템정보를조합한유니크한값이다. 20
Ⅲ. 워너크라이상세분석 워너크라이상세분석 21
Ⅲ. 워너크라이상세분석 1. 구성요소 워너크라이공격의구성요소로는익스플로잇키트, 랜섬웨어확산용악성코드, 추가악성코드생성, 토르네트워크접속과암 복호화에필요한악성코드및랜섬노트, 언어설정, 공개키파일등이포함되어있다. KISA에서확보한워너크라이랜섬웨어의경우, 드랍퍼가추가파일을생성하여전체파일은총 45 종으로구성된다. 표 3-1. 워너크라이구성요소 파일명 기능 1차악성코드 mssecsvc.exe (1종) 킬스위치체크, 익스플로잇탐색, 악성코드확산, tasksche.exe 생성 2차악성코드 ㄴ tasksche.exe (1종) 7종의악성코드를생성하는드랍퍼 (Dropper) 3차악성코드 ㄴ악성코드 (7종) 암호화, 복호화, 토르접속, 라이브러리등 7종 기타 ㄴ랜섬웨어추가파일 (36종) : 언어설정 (28종), 키파일, 안내문등 8종 악성코드수는변종이나감염시스템에따라상이할수있음 22
2. 동작원리 워너크라이악성코드에감염되면, 다음그림과같이동작하게된다. 그림 3-1. 워너크라이동작메카니즘 워너크라이상세분석 23
Ⅲ. 워너크라이상세분석 1) 킬스위치체크 랜섬웨어가동작하면먼저킬스위치체크루틴을거치게된다. 킬스위치는일종의자폭장치이며, 악성코드가특정도메인으로연결이가능하다면더이상의동작을하지않고스스로종료하게만든코드이다. 악성코드, 특히나감염대수가많으면많을수록해커에게이익이되는랜섬웨어에종료기능을넣었다는것자체가많은의구심을불러일으켰다. 일각에서는 1 랜섬웨어가제어불능상태로폭주하는것을방지 2 보안회사의샌드박싱기술을이용한탐지우회 3 킬스위치접속로그를통한랜섬웨어확산규모파악을위해킬스위치를만든것으로추정하고있다. 그림 3-2. 킬스위치확인및악성행위진행여부판단코드 24
킬스위치는워너크라이가한창기승을부리기시작할즈음영국의보안전문가가밝혀냈고, 킬 스위치를동작시키기위해도메인을생성시키면서전파력이급격히잠시감소했으나, 킬스위치기능이 제거되는변종이출현하여감염의확산을막을수가없었다. 그림 3-3. 킬스위치체크기능이제거된다른악성코드샘플 워너크라이상세분석 킬스위치는랜섬웨어진입함수 (WinMain) 에위치해있으며, 특정도메인과의연결상태만체크하는 비교적간단한코드로구성되어있다. 표 3-2. 워너크라이킬스위치변종 샘플입수 킬스위치 비고 5.13 09:00 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea[.]com - 5.14 21:32 ifferfsodp9ifjaposdfjhgosurijfaewrwergwea[.]com 도메인변경 5.15 16:15 킬스위치체크기능제거 기능제거 5.15 iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea[.]cum iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea[.]testing ifferfsodp9ifjaposdfjhgosurijfaewrwergwea[.]cum ifferfsodp9ifjaposdfjhgosurijfaewrwergwea[.]testing 도메인확장자변경 킬스위치체크루틴에서악성코드가특정도메인에접속이되지않을경우랜섬웨어는감염시스템 대상으로악성행위를진행하게된다. 25
Ⅲ. 워너크라이상세분석 2) 랜섬웨어전파 랜섬웨어전파대상선정 감염을확산시키기위해감염된시스템에악성행위가진행되는것과동시에백그라운드로네트워크 단에서는 SMB 취약점이존재하는지스캔한후취약점이존재할경우랜섬웨어를전파하게된다. 랜섬웨어악성코드 (mssecsvc.exe) 는전파와관련하여내부망을대상으로하는공격과외부망을대상으로하는공격 2가지로나누어져있다. 내부망에서는감염시스템 IP와 NetMask 정보를이용하여동일대역에위치한공격대상 IP를계산하여배열을생성하고해당 IP들을대상으로순차적공격을진행한다. 그림 3-4. 내부네트워크공격을위한 IP 범위계산코드 26
그림 3-5. 생성한 IP 배열순서에따른내부망공격수행코드 워너크라이상세분석 그림 3-6. 내부네트워크공격을위해생성된 IP 리스트일부 27
Ⅲ. 워너크라이상세분석 이후, 랜덤한공인 IP 대역을생성한후외부로취약점공격을진행한다. 이러한공격형태는과거 SKB DNS DDoS( 14.12월 ) 당시 Dalloz 리눅스웜과 KT DDoS( 16.9월 ) Mirai 악성코드의주변전파방식과유사한특징을가진다. 표 3-3. 외부네트워크스캔범위 A 클래스대역 ~ C 클래스대역까지공격 A클래스 1.0.0.1 ~ 126.255.255.254 B클래스 128.0.0.1 ~ 191.255.255.254 C클래스 192.0.0.1 ~ 223.255.255.254 그림 3-7. 외부네트워크공격을위해랜덤 IP 생성코드 28
익스플로잇및악성코드전파 공격대상시스템에 SMB(445 포트 ) 취약점이존재하는경우공격코드를주입한다. 그림 3-8. 악성코드전파루틴코드 워너크라이상세분석 29
Ⅲ. 워너크라이상세분석 그림 3-9. 공격대상주입 Shellcode 일부 30
3) 리소스암호화및감염알림 추가악성코드생성 최초드랍퍼악성코드 (mssecsvc.exe) 는추가악성코드 (tasksche.exe) 가생성하는데, 최초드랍퍼가감염및감염확산을위한행동을한다면, 실제랜섬웨어행위를수행하는것은추가악성코드인 taskche.exe 이다. taskche.exe는드랍퍼에의해윈도우서비스에등록되어동작하게되는데, 서비스명은 taskche.exe가생성될때만들어진랜덤한폴더명이된다. 그림 3-10. 악성코드생성순서 워너크라이상세분석 31
Ⅲ. 워너크라이상세분석 악성코드 tasksche.exe 의리소스영역중 XIA 에는비밀번호 (WNcry@2ol7) 를이용하여압축된추가 악성코드와악성코드동작을위한파일들이포함되어있다. 그림 3-11. 리소스內 XIA 문자열검색코드 그림 3-12. 특정비밀번호를통해압축해제코드 32
표 3-4. tasksche.exe 에의해생성된악성코드 (7 종 ) 파일명 b.wnry c.wnry r.wnry t.wnry 파일암호화후바탕화면으로설정되는이미지파일 파일행위 랜섬웨어에악용되는네트워크정보 (Tor 프로그램다운로드, 비트코인계좌정보, 키데이터전송등 ) 랜섬웨어감염사실과비트코인결제를안내하기위한텍스트파일 AES 로암호화된 u.wnry 파일 u.wnry WannaCry 랜섬웨어악성코드 (t.wnry 복호화를통해생성 ) taskdl.exe taskse.exe 비트코인송금기간만료시파일을삭제하는모듈 관리자계정으로랜섬웨어를실행시키는런쳐 (Launcher) 압축파일이해제된후생성된랜섬웨어 u.wnry 는파일암호화와비트코인결제등랜섬웨어동작에 필요한추가코드 36 종을생성한다. 또한, PKS 리소스에기록된바이너리를메모리에적재하고파일로 생성시킨다. 워너크라이상세분석 그림 3-13. 추가파일생성코드 33
Ⅲ. 워너크라이상세분석 표 3-5. u.wnry 에의해생성된파일 (36 종 ) 파일명 파일행위 msg( 폴더 ) 국가언어설정을위한파일 (Ransom Note, 28 개파일 ) f.wnry!wannadecryptor!.exe.lnk!wannacryptor!.bmp!wannadecryptor!.exe 샘플로복호화하기위한파일의목록!WannaDecryptor!.exe 바로가기파일 파일암호화후바탕화면에랜섬웨어감염사실을안내하기위한이미지파일 (b.wnry 파일과동일 ) 랜섬웨어감염사실안내비트코인결제를위한파일!Please Read Me!.txt 랜섬웨어감염사실과비트코인결제를안내하기위한텍스트파일 ( r.wnry 파일과동일 ) 00000000.eky 00000000.pky 암호화된 RSA 개인키파일 RSA 공개키파일 00000000.res AES 에이용되는랜덤데이터 ( 키생성에사용 ) 랜섬웨어실행 드랍퍼 (mssecsvc.exe) 는자신이생성한 taskse.exe 파일을통해관리자권한을획득하고랜섬웨어 악성코드를실행시킨다. 그림 3-14. 랜섬웨어악성코드실행 34
암호화대상선별 폴더등암호화제외대상을선별한다. 특히, 윈도우의정상적인동작에필요한기본폴더, 파일들과 비트코인결제와관련된인터넷익스플로러등관련파일들이제외된다. 그림 3-15. 디렉토리및암호화제외파일확인 워너크라이상세분석 35
Ⅲ. 워너크라이상세분석 그림 3-16. 비트코인결제를위한인터넷관련파일은암호화제외 36
그림 3-17. 암호화제외대상 워너크라이상세분석 37
Ⅲ. 워너크라이상세분석 워너크라이는 179종의파일을암호화시킨다. 암호화된이후파일확장자는.WNCRY 로변경된다. 이들암호화대상파일종류는랜섬웨어내부에저장되어있다. 특히, 한글문서확장자 (hwp) 도그대상에속해있다. 표 3-6. 워너크라이랜섬웨어암호화대상.doc,.docx,.docb,.docm,.dot,.dotm,.dotx,.xls,.xlsx,.xlsm,.xlsb,.xlw,.xlt,.xlm,.xlc,.xltx,.xltm,.ppt,.pptx,.pptm,.pot,.pps,.ppsm,.ppsx,.ppam,.potx,.potm,.pst,.ost,.msg,.eml,.edb,.vsd,.vsdx,.txt,.csv,.rtf,.123,.wks,.wk1,.pdf,.dwg,.onetoc2,.snt,.hwp,.602,.sxi,.sti,.sldx,.sldm,.sldm,.vdi,.vmdk,.vmx,.gpg,.aes,.ARC,.PAQ,.bz2,.tbk,.bak,.tar,.tgz,.gz,.7z,.rar,.zip,.backup,.iso,.vcd,.jpeg,.jpg,.bmp,.png,.gif,.raw,.cgm,.tif,.tiff,.nef,.psd,.ai,.svg,.djvu,.m4u,.m3u,.mid,.wma,.flv,.3g2,.mkv,.3gp,.mp4,.mov,.avi,.asf,.mpeg,.vob,.mpg,.wmv,.fla,.swf,.wav,.mp3,.sh,.class,.jar,.java,.rb,.asp,.php,.jsp,.brd,.sch,.dch,.dip,.pl,.vb,.vbs,.ps1,.bat,.cmd,.js,.asm,.h,.pas,.cpp,.c,.cs,.suo,.sln,.ldf,.mdf,.ibd,.myi,.myd,.frm,.odb,.dbf,.db,.mdb,.accdb,.sql,.sqlitedb,.sqlite3,.asc,.lay6,.lay,.mml,.sxm,.otg,.odg,.uop,.std,.sxd,.otp,.odp,.wb2,.slk,.dif,.stc,.sxc,.ots,.ods,.3dm,.max,.3ds,.uot,.stw,.sxw,.ott,.odt,.pem,.p12,.csr,.crt,.key,.pfx,.der 38
암호화과정 워너크라이는대칭키암호알고리즘 (AES) 을이용하여대상파일들을암호화시킨다. 또한, 해커에게 전달할키에대한암호화는비대칭키 (RSA) 암호알고리즘을사용한다. 비교적속도가빠른대칭키알고리즘으로다수의파일을암호화시키고, 해커만해독이가능하도록공개키 (Private Key) 를이용하여암호화에사용한대칭키들을암호화시켜해커에게전송하도록구성되어있다. 그림 3-18. 암호알고리즘적용개요도 워너크라이상세분석 39
Ⅲ. 워너크라이상세분석 암호화키생성및저장 표 3-7. 암호화키생성및저장, 암복호화흐름도 사전정의 [ M ] // 암호화대상파일 [ E_M ] // 암호화된파일 [ K_aes ] // 파일암호화마다랜덤하게생성되는 AES 키값 [ E_K_aes ] // 암호화된 AES 키값 [ KU_master ] // 해커의공개키, 랜섬웨어에포함되어유포 [ KR_master ] // 해커가보유하고있는해커의개인키 [ KU_pc, KR_pc ] // 감염PC에임의로생성되는 RSA 키쌍 ( 공개키, 개인키 ), 메모리에적재 [ E_KR_pc ] // 암호화된 PC 內의개인키 [ Enc(A, B) ] // A를 B로암호화 [ Dec(A, B) ] // A를 B로복호화 키암복호화및메시지암 복호화흐름 랜섬웨어감염시스템 해커 1 암호키 K_aes = random() 2 파일암호화 E_M = Enc(M, K_aes) 3 암호키암호화 E_K_aes = Enc(K_aes, KU_pc) 4 암호화파일헤더에포함.WNCRY = E_K_aes + E_M 5 개인키는해커의마스터공개키로암호화 E_KR_pc = Enc(KR_pc, KU_master) 6 암호화키해커에게전달 9 수신받은키 (KR_pc) 로파일헤더의암호화된 AES 키를복호화 K_aes = Dec(E_K_aes, KR_pc) 10 암호화파일복호화 M = Dec(E_M, K_aes) 7 해커의개인키 (KR_master) 로복호화 Dec (E_KR_pc, KR_master) 8 복호화된키 (KR_pc) 를감염시스템으로전달 40
암호화과정은다음과같다. 1 RSA-2048 공개키와개인키를생성하여메모리에적재한다. * 공개키는.pky로저장하고개인키는악성코드內존재하는마스터공개키로암호화하여.eky로저장, 마스터개인키는공격자가소유 그림 3-19. 공개키및개인키생성 워너크라이상세분석 41
Ⅲ. 워너크라이상세분석 2 파일암호화를위해서각파일마다랜덤 AES 키를생성한다. 그림 3-20. AES 대칭키생성 42
3 암호화대상파일들을 AES 암호알고리즘으로암호화한다. 그림 3-21. AES 알고리즘을이용한파일암호화 워너크라이상세분석 4 암호화시사용한각파일의 AES 키는 RSA 공개키로암호화후대상파일헤더에저장한다. 그림 3-22. RSA 알고리즘을이용한 AES 키암호화 43
Ⅲ. 워너크라이상세분석 감염알림 대상파일들이암호화된이후워너크라이는랜섬노트를표시한다. 이노트에는지불할비트코인 주소, 금액 ($300) 및남은결제가능시간등을표시한다. 또한, 감염시스템의배경화면을랜섬웨어에 감염되었음을표시하는이미지로변경시킨다. 비트코인요구 비트코인결제를위한공격자의계좌정보는최초드랍퍼 (tasksche.exe) 에서추가파일생성시생성된다. 최초드랍퍼 (mssecsvc.exe) 에서네트워크설정파일 c.wnry을생성할때코드내부하드코딩되어있는 3 개비트코인계좌중랜덤하게 1개를선택하여감염자에게알려준다. 그림 3-23. 비트코인계좌정보 44
표 3-8. 비트코인계좌정보 비트코인계좌 ( 총 3 개 ) 13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94 12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw 115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn 그림 3-24. c.wnry 에기록된비트코인계좌정보및네트워크정보 워너크라이상세분석 45
Ⅲ. 워너크라이상세분석 다국어지원 워너크라이랜섬웨어는총 28 개의다국어를지원한다. 각언어별랜섬노트는감염된폴더의하위폴더 msg 에 저장되어있다. 지원하는언어는다음과같다. 표 3-9. 다국어지원목록 (28 개언어 ) bulgarian ( 불가리아 ) chinese(simplified) ( 중국 ( 간체 )) chinese(traditional) ( 중국 ( 공용 )) croatian ( 크로아티아 ) czech ( 체코 ) danish ( 덴마크 ) dutch ( 네덜란드 ) english ( 영어 ) filipino ( 필리핀 ) finnish ( 핀란드 ) french ( 프랑스 ) german ( 독일 ) greek ( 그리스 ) indonesian ( 인도네시아 ) italian ( 이탈리아 ) japanese ( 일본 ) korean ( 한국 ) latvian ( 라트비아 ) norwegian ( 노르웨이 ) polish ( 폴란드 ) portuguese ( 포르투갈 ) romanian ( 루마니아 ) russian ( 러시아 ) slovak ( 슬로바키아 ) spanish ( 스페인 ) swedish ( 스웨덴 ) turkish ( 터키 ) vietnamese ( 베트남 ) 46
기간만료시삭제 정해진결제 ( 지불 ) 기간이종료되는경우 taskdl.exe 를호출하여암호화된파일을삭제한다. 삭제과정은 다음과같다. 1 파일삭제를위해감염시스템內드라이브및폴더를확인한다. 그림 3-25. 감염 PC 內드라이브및특정폴더탐색 워너크라이상세분석 47
Ⅲ. 워너크라이상세분석 2 감염시스템內특정폴더 ( 휴지통, 윈도우폴더, Temp 폴더 ) 탐색후메모리에내용을기록한다. 그림 3-26. 탐색된특정폴더메모리기록 3 각드라이브, 디렉토리에서.WNCRYT 확장자를가지고있는파일을삭제한다. * WannaCry 변종에따라 WCYR, WNCRY, WNCRYT 등다양한확장자를가지고있다. 그림 3-27. 검색한파일확장자 (.WNCRYT) 에해당하는파일을삭제 48
토르 (Tor) 접속 악성코드 tasksche.exe 에서생성된 c.wnry 파일에토르네트워크사용을위한정보 ( 프로그램 1 종, URL 5 개 ) 가저장되어있다. 이중 Tor 망접속프로그램은공개프로그램이다. 표 3-10. c.wnry 에기록된정보목록 Tor 프로그램다운로드 dist.torproject.org/torbrowser/6.5.1/tor-win32-0.2.9.10.zip gx7ekbenv2riucmf.onion 57g7spgrzlojinas.onion 랜섬웨어정보전송 URL xxlvbrloxvriy2c5.onion 76jdd2ir2embyv47.onion cwwnhwhlz52maqm7.onion 그림 3-28. c.wnry 에기록된정보 워너크라이상세분석 49
Ⅲ. 워너크라이상세분석 그림 3-29. 다운로드한 Tor 접속프로그램저장 토르네트워크에접속되면비트코인결제또는암호키데이터를전송한다. 그림 3-30. Tor 프로그램을신규프로세스에등록 50
그림 3-31. Tor 프로그램을이용하여 c.wnry 에기록된 URL 접속 암호화된파일복구 랜섬웨어알고리즘으로분석한복호화과정은다음과같다. 공격자는감염시스템에서공격자의공개키로 워너크라이상세분석 암호화되어수신받은암호화된개인키를공격자의개인키로복호화하여감염시스템으로전송한다. 공격자로부터 AES 암호키를복호화할수있는개인키 (.dky) 를수신하고수신받은.dky 파일 ( 개인키 ) 로암호화 파일 (.WNCRYT) 헤더에저장된암호화된 AES 키를복호화한후암호화파일의복호화를진행한다. 그림 3-32..dky 파일생성 51
Ⅲ. 워너크라이상세분석 1 파일헤더를이용하여암호화파일여부체크후, 암호화된파일내부에저장된 AES 키를.dky 파일 이용해복호화한다. 그림 3-33. 파일헤더의시그니처 WANACRY! 등확인 2 복호화된 AES 키를통해파일복호화한다. 그림 3-34..dky 파일을이용하여파일복호화 52
3. SMB 취약점 (CVE-2017-0144) 분석 취약점개요 이번워너크라이랜섬웨어유포에악용된취약점은이터널블루 (EternalBlue) 로명명되었으며, CVE-2017-0144(SMB)* 취약점에해당된다. 해당취약점툴킷은미국 NSA 에서극비리에 개발했던것으로알려져있다. * 원격에서특수하게조작된 SMB 메시지를전송하여원격에서코드를실행시킬수있는취약점, CVSS 3.0 기준 8.1(High 등급 ), 2.0 기준 9.3(High 등급 ) 쉐도우브로커스 (Shadow Brokers) 의해킹으로 NSA 내부정보가유출되면서수면위로떠오른취약점 중하나이다. 이해킹으로인해미정부에서는정보기관이확보한중요취약점의공개에대한의견이 분분했으며, 이를위해정보기관수장들이모여공개여부를판단하는협의체구성을골자로하는 워너크라이상세분석 PATCH Act 법안을 5 월초발의한바있었다. 해당취약점은 17 년 3 월 14 일윈도우정기보안업데이트에서패치가배포되었다. 취약점을이용한악성코드전파과정 원격에위치한윈도우즈시스템의 SMB 포트 (445) 를대상으로취약점을발현시킬수있는익스플로잇및커널 쉘코드를순차적으로전송하여워너크라이를전파한다. 표 3-11. EternalBlue 취약점을이용한악성코드전파과정요약 1 취약점을통해 SMB 함수포인터변조 2 커널쉘코드실행및 DoublePulsar* 설치 3 DoublePulsar 가설치된경우, 백도어기능을이용해악성코드를 PC 에감염 4 未설치시 DoublePulsar 를먼저전파한후악성코드전파 * DoublePulsar: EternalBlue 로익스플로잇될경우실행되는백도어기능을갖는공격도구이름 53
Ⅲ. 워너크라이상세분석 취약점원인분석윈도우즈운영체제 SMB 메시지를처리하는 srv.sys 파일의특정함수 ( SrvOs2FeaListSizeToNt ) 에서구조체 ( FeaList ) 에대한잘못된길이계산으로인해인접한버퍼의데이터를덮어쓸수있는 OOB(Out Of Bound)* 취약점이발생한다. * OOB(Out Of Bound) : 정해진메모리범위를벗어난곳까지데이터를읽고쓸수있는취약점 그림 3-35. Out Of Bound 취약점발생원리 SMB 프로토콜은세션이맺어진상태에서 OS/2 "Full Extended Attributes(FEA)" 구조체를 NT "Full Extended Attributes(FEA)" 형태로변경하기위해 SrvOs2FeaListToNt() 함수를호출한다. 이를자세히살펴보면다음과같다. 54
1 SrvOs2FeaListToNt() 함수는 NT FeaList 구조체를커널메모리에할당하기위해기존의 구조체크기를변환하는 SrvOs2FeaListSizeToNt() 를호출한다. 그림 3-36. SrvOs2FeaListSizeToNt() 함수호출을통해리스트사이즈반환 워너크라이상세분석 55
Ⅲ. 워너크라이상세분석 2 SrvOs2FeaListSizeToNt() 함수는루프구문수행후, NT FeaList 구조체의크기값 (0x10fe8) 반환한다. 그림 3-37. SrvOs2FeaListSizeToNt() 함수중사이즈변환코드 56
3 이때사이즈반환전연산된길이값을리스트길이부분 (FeaList 구조체 cblist 변수 ) 에저장 할때와리스트의초기리스트길이 0x10000(DWORD 타입 ) 를 WORD 타입으로형변환후 저장하는과정에서 OOB 취약점이발생하게된다. * FEALIST 구조체정보 typedef struct _FEALIST { DWORD cblist; -> FeaList 전체길이변수 FEA list[1]; } FEALIST, *PFEALIST; 그림 3-38. 잘못된형변환에의해비정상적인값으로사이즈설정 워너크라이상세분석 57
Ⅲ. 워너크라이상세분석 그림 3-39. 메모리에비정상적인값으로사이즈설정 * 기존리스트의길이 ( 사이즈 ) 가저장된곳이 0xaa9b70d8이고, 초기값은 0x10000이었지만 WORD 형태로값이저장되어길이값이 0x1ff5d로설정되며, 해당값에의해정상적인경우보다더많은사이즈의메모리복사가이루어져취약점발생 4 구조체리스트길이에해당되는변수값이비정상적인사이즈 (0x1ff5d) 로설정되었지만, 실제메모리할당크기파라미터로사용될 NT Fea 크기 (SrvOs2FeaListSizeToNt 리턴값 ) 는 0x10fe8 로 0x1ff5d 보다작아정해진메모리를벗어나데이터를쓰는문제를악용한다. 그림 3-40. 구조체의길이보다작은메모리공간이할당 SrvOs2FeaListSizeToNt 반환값이커널메모리를할당하는 SrvAllocateNonPagedPool 함수의인자값으로호출 58
5 SrvOs2FeaListSizeToNt() 가호출된이후 SrvOs2FeaToNt() 함수에서 memmove를통해두번의 FeaList 데이터복사과정을수행하는데, SrvAllocateNonPagedPool로할당된메모리의사이즈는 0x11000이지만, 0x11000사이즈를벗어나는곳까지메모리복사가되며이로인해인접한버퍼포인터가변조되어프로그램실행을공격자가원하는곳으로변조할수있다. 그림 3-41. SrvOs2FeaToNt 함수코드 워너크라이상세분석 59
Ⅲ. 워너크라이상세분석 그림 3-42. 복사될메모리의할당사이즈및취약점발생 복사될곳의메모리할당은 0x874d0000 ~ 0x874E1000이지만, memmove에의해 0x874e0ff9부터사이즈 0xa8만큼복사가일어나 0x874E10A1까지복사되어 A1만큼오버플로우발생 60
그림 3-43. memmove 가실행된후의 SRVNET BUFFER HEADER 가오버라이트된화면 그림 3-44. 오버플로우가발생될때의패킷 (memove 의사이즈부분 ) 워너크라이상세분석 61
Ⅲ. 워너크라이상세분석 익스플로잇과정 익스플로잇코드는먼저취약점을트리거하기전실행흐름을원하는위치로변조하기위한 커널메모리레이아웃을구성한다. 원격에서피해 PC 로다량의 SMB 패킷전송을통해커널 메모리레이아웃을구성하는데이때, Kernel Heap Feng Shui* 기법을사용한다. * Heap Feng Shui : 크기가동일한버퍼를연속적으로메모리에할당하고이중특정버퍼를해제시킨후동일한크기의취약한버퍼를프리된공간에끼워넣어인접한버퍼를오버라이트하는기법 그림 3-45. 익스플로잇커널메모리레이아웃 62
Kernel Heap Feng Shui 를사용하여커널메모리레이아웃을구성하는세부내용은아래와같다. 1 최초 OOB 취약점을발생시키는 OS/2 FeaList 패킷을전체길이 (0x11000) 보다작은크기까지만 데이터를전송하여커널 Pool 메모리할당대기상태로만든다. 전체길이를모두수신될경우메모리가할당되는구조를가짐 그림 3-46. OS/2 FEA 데이터전송패킷 워너크라이상세분석 63
Ⅲ. 워너크라이상세분석 2 SMBv1 패킷을전송하여 0x10000 크기의커널 Pool 메모리할당한다. 그림 3-47. SMBv1 버퍼메모리 (0xfff0 + 0x10 = 0x10000) 할당 64
3 SMBv2 패킷 13 개전송하여 0x11000 크기의커널 Pool 메모리가연속적으로 할당하도록힙공간에 SRVNET BUFFER 데이터를스프레이시킨다. 그림 3-48. KERNEL HEAP FENG SHUI 워너크라이상세분석 65
Ⅲ. 워너크라이상세분석 4 SMBv1 패킷을 0x11000 크기의커널 Pool 메모리를할당, 향후해당메모리버퍼는 OOB 취약점이발생하는버퍼를위한공간을위해할당한다. 그림 3-49. SMBv1 버퍼메모리 (0x87f8*2+0x10 = 0x11000) 할당 66
5 첫번째 SMBv1 버퍼 ( 크기 :0x10000) 는세션종료이후할당된메모리가해제된다. 그림 3-50. 첫번째 SMBv1 버퍼메모리해제 6 OOB 취약점이있는버퍼 (NT FEA) 뒷부분에 SRVNET BUFFER 를위치시키기위해힙 스프레이패킷 5 개를추가적으로전송한다. 그림 3-51. 힙스프레이패킷추가전송 워너크라이상세분석 7 대기상태로있는 OS/2 FeaList 패킷을할당하기위해두번째 SMBv1 버퍼 ( 크기 :0x11000) 를세션종료를통해메모리해제한다. 그림 3-52. 두번째 SMBv1 버퍼메모리해제 67
Ⅲ. 워너크라이상세분석 8 최초로보냈던 OS/2 FeaList 패킷의마지막데이터를전송하여바로전해제된메모리공간에 OOB 취약점이발생하는버퍼를할당한다. 그림 3-53. OS/2 FeaList 마지막패킷전송하여프리된공간에할당 68
9 수신된마지막패킷의데이터가 memmove 를통해정해진범위를벗어난메모리에복사되면서 아래그림과같이인접한 SRVNET BUFFER(0x84768000) 의 Header 정보가보내진데이터로 오버라이트되어변조된다. 그림 3-54. OOB 가발생하여 Srvnet Buffer Header 가변조 워너크라이상세분석 69
Ⅲ. 워너크라이상세분석 10 SRVNET BUFFER Header에는 Memory Discriptor List(MDL) 라는구조체정보가존재하며, 해당구조체의 MappedSystemVa 변수는데이터를저장하는버퍼주소값이저장된다. - 해당데이터주소위치를 0xffdfef80값으로덮어버퍼데이터가 0xffdff000 (0xffdfef80+0x80) 에쓰도록강제변경 0xffdfef80에서보내진바이트의수 (0x80) 를더한곳에데이터가쓰임 11 아래패킷을전송할경우 0xffdff000 주소부터데이터가저장되며, 0xffdff1f1 주소에는커널쉘코드가저장된다. 그림 3-55. 커널쉘코드전송 70
그림 3-56. TcpDeliverDataToClient 함수를통해패킷으로전송된커널쉘코드를메모리에복사 워너크라이상세분석 71
Ⅲ. 워너크라이상세분석 12 OOB 취약점으로인해함수포인터주소가쉘코드주소로변조되어 DoublePulsar 를설치하는 커널쉘코드가실행된다. 그림 3-57. 함수포인터가커널쉘코드로변조 그림 3-58. 변조된콜스택정보 72
13 쉘 (Shell) 코드에의해 DoublePULSAR 가설치되며, 이후부터는 DoublePULSAR 백도어를이용해 워너크라이 DLL 을대상 PC 에인젝션하여전파한다. 그림 3-59. 커널쉘코드시작부분 워너크라이상세분석 73
Ⅲ. 워너크라이상세분석 백도어인 DoublePULSAR 의존재유무에따라그이후행동이달라지는데, 이를위해 SMB 패킷을 전송하여 DoublePULSAR 에감염여부를판단한다. 그림 3-60. DoublePULSAR 확인을위한패킷전송 그림 3-61. 응답패킷을통해 DoublePULSAR 설치여부확인 74
만약 DoublePULSAR가설치되어있는경우, DoublePULSAR 백도어기능을이용해워너크라이 DLL을대상 PC에인젝션하여전파한다. 하지만, DoublePULSAR 未존재시, CVE-2017-0144(EternalBlue) 취약점익스플로잇코드를전송해 DoublePULSAR를설치한다. 그림 3-62. 익스플로잇페이로드패킷 워너크라이상세분석 75
Ⅲ. 워너크라이상세분석 취약점패치 취약점패치는근본적인원인인 srv.sys 파일의 SrvOs2FeaListSizeToNt() 함수에서리스트 길이설정부분을수정하여제거하면된다. 그림 3-63. 취약점패치 패치전 패치후 76
영향받는시스템 표 3-12. SMB 취약점영향을받는시스템 o Windows 10 o Windows 8.1 o Windows RT 8.1 o Windows Vista o Windows 8 o Windows 8 Enterprise o Windows 8 Enterprise KN o Windows 8 KN o Windows 8 Pro o Windows 8 Pro KN o Windows Embedded 8 Industry Enterprise o Windows Embedded 8 Industry Pro o Windows Embedded 8 Pro o Windows 7 o Windows XP Embedded o Windows Server 2016 o Windows Server 2012 R2 o Windows Server 2008 R2 SP1 SP2 o Microsoft Windows Server 2003 Compute Cluster Edition o Microsoft Windows Server 2003 R2 Datacenter Edition(32 비트 x86) o Microsoft Windows Server 2003 R2 Datacenter x64 Edition o Microsoft Windows Server 2003 R2 Enterprise Edition(32 비트 x86) o Microsoft Windows Server 2003 R2 Enterprise x64 Edition o Microsoft Windows Server 2003 R2 Standard Edition(32 비트 x86) o Microsoft Windows Server 2003 R2 Standard x64 Edition o Microsoft Windows Server 2003, Datacenter Edition(32 비트 x86) o Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems o Microsoft Windows Server 2003, Datacenter x64 Edition o Microsoft Windows Server 2003, Enterprise Edition(32 비트 x86) o Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems o Microsoft Windows Server 2003, Enterprise x64 Edition o Microsoft Windows Server 2003, Standard Edition(32 비트 x86) o Microsoft Windows Server 2003, Standard x64 Edition o Microsoft Windows Server 2003, Web Edition o Windows XP Home Edition o Windows XP Media Center Edition 2004 o Windows XP Media Center Edition 2005 o Windows XP Professional o Windows XP Professional x64 Edition o Windows XP Tablet PC Edition o Windows XP Tablet PC Edition 2005 워너크라이상세분석 77
Ⅳ. 해커그룹연관성 78
Ⅳ. 해커그룹연관성 해커그룹연관성 79
Ⅳ. 해커그룹연관성 1. 해외보안업체동향 아래의표로북한과의연관관계를주장하는측과그렇지않은측의내용을요약했다. 표 4-1. 북한과의강력한연계성주장내용 분석주체 의견 o 구글社의 NeelMehta 연구원의 SNS를통한내용공유로부터시작되었으며카스퍼스키社의연구원도해당내용에동의하는내용의글을게재 (5.15) < 구글社 Neel Mehta 연구원트위터발췌 > 구글, 1) 카스퍼스키, 2) 시만텍 3) o 시만텍社는워너크라이랜섬웨어와 Lazarus그룹간의연관성분석내용공개 (5.22) - 2월, 3월, 4월해외에서발생한워너크라이초기버전에대한공격내용분석 < 시만텍분석내용 > 최초워너크라이공격이발생한이후피해자의네트워크에서 Lazarus와관련된악성코드발견 (2월) 워너크라이유포에사용된백도어악성코드가 Lazarus그룹에서사용하는악성코드계열 (3월, 4월 ) Trojan.Bravonc 계열의악성코드가 Lazarus 그룹과동일한 C&C 기반을사용 * 해당계열의악성코드의코드난독화방식이워너크라이와유사 Fake SSL 기능을구현할때사용한코드와동일 * 워너크라이초기버전유포시이용한백도어가 Lazarus 그룹에서사용한백도어의변종 - 공격기법또한 Lazarus 그룹에서사용하는 SMB 유포방식 ( 하드코딩된 ID/PW를이용한 SMB 전파 ) 과동일 1) http://www.sify.com/finance/indian-origin-google-researcher-links-wannacry-wannacrypt-ransomware-attack-tonorth -korea-news-crime-rfqqavibbijab.html 2) https://www.theverge.com/2017/5/15/15643226/wannacry-ransomware-north-korea-attribution-wannacrypt 3) https://www.symantec.com/connect/blogs/wannacry-ransomware-attacks-show-strong-links-lazarus-group 80
분석주체 의견 o 워너크라이악성코드에대한메타데이터분석결과에서, - 압축파일의타임스탬프, 다국어로감염알림메시지를담고있는 28개의 RTF 포맷에대한메터데이터등을분석 - 워너크라이랜섬웨어공격자는중국어페이지파일을편집하는데많은시간을보냈으며사용된 Word 프로그램의기본설정언어는한국어로설정 < 각언어별편집소요시간통계 > 일레븐패스 4) 해커그룹연관성 < RTF 메타데이터상의한국어디폴트값및 UTC 타임존에대한추정자료 > o 공격자의시간대는 UTC+2 와 UTC+12 사이의시간대로추정된다고밝힘 4) https://threatpost.com/metadata-analysis-draws-its-own-conclusions-on-wannacry-authors/126287/ 81
Ⅳ. 해커그룹연관성 표 4-2. 북한소행을반론하는측면 분석주체 의견 o 플래쉬포인트社에의하면, 영어와중국어로작성된랜섬노트만이사람에의해서작성된것이며다른언어들은문법적오류가발견되어번역된것으로판단 - 중국어로작성된내용이매우유창한어구를구사한것으로분석되었으며남중국, 홍콩, 타이완또는싱가포르에서사용하는언어형태로언급 플래쉬포인트 5) < 워너크라이감염지도 > o 플래쉬포인트社는감염시표시되는랜섬웨어설명문이초기에한국어로작성된것이아닌다른언어에서변환되었던것이라고주장 (5.30) o 싸이버리즌社는북한의전통적인사이버공격정책과맞지않다고언급 (5.18) - 코드유사성이존재한다는점은인정하지만, 해당코드들이매우오래된기술이며, 코드재활용은해커들이흔하게이용하는방법이라고전함 * 또한, 재활용된코드영역이일반적인함수호출이며북한의코딩방식을특징할수있는특정근거가부족함 싸이버리즌 6) o 대부분의북한해커들은중국이나러시아에서활동하고있으며, 인터넷망역시주변국을이용하고있음 - 만일, 워너크라이랜섬웨어를개발하고실행하는과정에중국이나러시아지역의 IP를이용한경우에대한위험성도존재함 - 이번사고의감염비율중한국이상대적으로적은점도언급 5) https://www.flashpoint-intel.com/blog/linguistic-analysis-wannacry-ransomware/ 6) https://www.cybereason.com/blog-north-korea-is-unlikely-to-be-behind-the-wannacry-attack/ 82
2. 연관성분석 이번워너크라이사고를추적 분석하는많은기관 업체에서는과거해킹사태들과유사점을지적하며, Lazarus( 이하, 라자루스 )* 를공격주체로지목하기도하였다. * 소니픽쳐스해킹사고의주범으로알려진북한해커그룹 5 월 16 일, 해외구글社소속의분석가 Neel Mehta 는자신의분석내용을근거로이번워너크라이 (WannaCry) 랜섬웨어의공격주체가라자루스와관련있다고주장했다. 7) 그림 4-1. Neel Mahta 분석, 아래그림중적색으로표시된부분 해커그룹연관성 7) Neel Mehta 트위터 83
Ⅳ. 해커그룹연관성 그림 4-1 은라자루스관련악성코드 ( 左 ) 와이번워너크라이랜섬웨어샘플 ( 右 ) 을비교한결과로분석가 ( Neel Mehta ) 가유사하다고주장하는코드영역이다. 그림 4-2. 보안전문가 (Matthieu Suiche) 의분석내용 또다른보안전문가인 Matthieu Suiche (comae technologies) 는자신의트위터에시만텍이필리핀 SWIFT 해킹사고에서찾은악성코드 (Symantc.Contopee) 와이번워너크라이악성코드를비교분석하였다 ( 그림 4-2). 이들소스코드는유사성을가지고있었으며, 특정함수의경우 100% 동일함을언급했다. 8) 초기분석시점에서시만텍은라자루스조직, 특히북한과의연관성에대해유보적인입장을취하면서보다 9) 강력한근거를찾기위해지속적으로조사할것임을언급한바있었다. 이후, 시만텍역시그간의자사추적 내용을바탕으로금번워너크라이사고에서라자루스조직이사용하는해킹툴과의유사성이발견되었다고 발표하면서 Kaspersky 社와같이북한관련성이높음에의견을같이하는것으로선회하였다. 10) 8) Matthieu Suiche 트위터 (https://twitter.com/msuiche) 9) http://money.cnn.com/2017/05/15/technology/wannacry-hack-responsible-hackers/index.html 10) http://www.securityweek.com/wannacry-highly-likely-work-north-korean-linked hackers-symantec-says 84
그림 4-3. KISA 분석및비교, 유사성분석을위해변환 KISA 와인텔리전스네트워크에서도이를확인해본결과그림 4-3 과같이, 해당코드가유사성을가짐을 확인할수있었다. 하지만, 결정적인증거는확보되지않은상황이다. 해커그룹연관성 국내보안전문가들도이번워너크라이사고가소니픽쳐스해킹사태와유사함을지적하며관련증거를 확보하기위해지속적으로모니터링을진행하고있다. 85
Ⅳ. 해커그룹연관성 3. 연관성결론 해외다양한보안업체들이이번워너크라이공격배후로북한을두고있는것에대하여논란을벌이고있는상황이며 국내외정보및수사당국의명확한조사결과가나온상황도아니다. 라자루스의악성코드들과금번랜섬웨어의특정영역이일부유사하지만결정적인증거가발견되지않아서당분간 논란은지속될것으로예상된다. 86
[ 부록 ] 랜섬웨어 (WannaCry) 예방대국민행동요령
[ 부록 ] 랜섬웨어 (WannaCry) 예방대국민행동요령제 4 장. 글로벌사이버위협동향 랜섬웨어 (WannaCry) 예방대국민행동요령 1) PC 를켜기전, 네트워크 ( 인터넷 ) 물리적단절 - 랜선뽑기 - 와이파이끄기 2) PC 전원을켜고, PC 보안설정변경 - Windows 방화벽설정변경 (89 페이지참고 ) * 파일공유 (SMB) 기능차단 3) PC 인터넷재연결후, 윈도우운영체제최신업데이트실행 - Windows Update 실행 - 백신프로그램업데이트 * 파일공유기능필요시방화벽설정복구 (93페이지참고 ) 감염대상 : 최신패치를적용하지않은윈도우운영체제시스템 (PC, 서버, ATM, PoS 등 ) - 윈도우운영체제 : 윈도우 XP, 7, 8, 8.1, 10, Server 2003, 2008, 2012, 2016 주의사항 : 변종이지속적으로출현되고있어신속한윈도우운영체제업데이트필요 88
1. PC 보안설정 변경 Window 방화벽에서 SMB 사용되는 포트 차단 1) [제어판] [시스템 및 보안] 랜섬웨어(WannaCry) 예방 대국민 행동 요령 2) [Windows 방화벽] [고급 설정] 89
[ 부록 ] 랜섬웨어 (WannaCry) 예방대국민행동요령제 4 장. 글로벌사이버위협동향 3) [ 인바운드규칙 ] [ 고급설정 ] [ 포트 ] [ 다음 ] 4) [TCP] [ 특정로컬포트 ] [139, 445] [ 다음 ] 90
5) [ 연결차단 ] [ 다음 ] 6) [ 도메인, 개인, 공용체크확인 ] [ 다음 ] 랜섬웨어 (WannaCry) 예방대국민행동요령 91
[ 부록 ] 랜섬웨어 (WannaCry) 예방대국민행동요령제 4 장. 글로벌사이버위협동향 7) [ 이름설정 ] [ 마침 ] 92
2. 파일공유기능재사용필요시 - 방화벽설정해제 Windows 보안업데이트완료후 파일공유기능재사용을위해 Window 방화벽에서 SMB 차단설정해제 1) [ 제어판 ] [ 시스템및보안 ] [Windows 방화벽 ] [ 고급설정 ] 2) [ 인바운드규칙 ] [SMB 차단 ] [ 우클릭후삭제, 예 (Y)] [ 재부팅 ] 랜섬웨어 (WannaCry) 예방대국민행동요령 93
제 4 장. 글로벌사이버위협동향 memo 94
워너크라이분석스페셜리포트 발행일 2017 년 10 월 발행및편집 한국인터넷진흥원사이버침해대응본부침해사고분석단 주소 서울시송파구중대로 135( 가락동 78) IT 벤처타워 KISA Report 의내용은무단전재할수없으며, 인용할경우그출처를반드시명시하여야합니다. 95