본문 바로가기

디지털 세상/보안

[Cisco Talos 보안 업데이트] Bad Rabbit 악성코드

*참고: 블로그 게시물에서는 새로운 위협에 대한 Talos 활발한 연구 현황을 설명합니다

 이는 확정된 내용이 아니므로 연구가 진행되면서 계속 업데이트될 예정입니다.



2017 10 24일에 Cisco Talos에서는 동부 유럽 러시아 전역의 조직에 영향을 주는 광범위한 랜섬웨어 공격에 경고 태세를 갖추고 있었습니다. 이전 상황에서와 마찬가지로 Cisco 위협 환경 전반에 그러한 공격이 나타남과 동시에, 신속하게 상황을 평가하여 고객들이 이를 비롯한 기타 위협에서 보호받을 있도록 하였습니다.


지난 개월 동안 대규모 랜섬웨어 공격이 차례 있었습니다. 이는 또한 Petya 랜섬웨어를 기반으로 한다는 점에서 Nyetya 가지 유사성을 나타내는 보입니다. 코드의 주요 부분들이 재작성된 것처럼 보입니다. 배포 과정을 보면 최근에 관찰된 정교한 공급망 공격들(Supply chain attack)과는 다른 듯합니다.

 배포 

Talos Fake Flash Player 업데이트가 드라이브 바이 다운로드를 통해 배포되면서 시스템들을 감염시킨다고 확신합니다. Bad Rabbit으로 리디렉션되는 것으로 관찰된 사이트들은 러시아, 불가리아 터키에 기반한 다양한 사이트들이었습니다.


사용자가 이처럼 침해당한 웹사이트 하나를 방문하면 악성 파일을 호스팅하는 1dnscontrol[.]com이라는 사이트로 리디렉션되었습니다. 실제 악성 파일을 다운로드하기 전에 고정 IP 주소(185.149.120[.]3)로의 'POST request' 요청이 확인되었습니다. 요청이 고정 경로 "/scholasgoogle" 게시되는 것이 관찰되었으며 세션의 도메인 이름, User Agent, 경유지 쿠키 정보들을 제공하였습니다. POST 요청 드로퍼(dropper) 1dnscontrol[.]com /index.php /flash_install.php 경로에서 다운로드되었습니다. 경로를 사용하였으나 하나의 파일만 다운로드되었습니다. 현재 정보들을 기반으로 확인해 보면, 악성코드는 1dnscontrol[.]com 서버가 다운되기 6시간 전쯤까지 활동했던 것으로 보입니다. 최초 다운로드는 2017-10-24 08:22 UTC경에 관찰되었습니다.

드로퍼(630325cac09ac3fab908f903e3b00d0dadd5fdaa0875ed8496fcbb97a558d0da) 사용자를 이용해 감염이 쉽게 이루어지도록 하며 직접적으로 시스템을 손상시키기 위해 어떠한 익스플로잇도 사용하지 않습니다. 드로퍼에는 Bad Rabbit 랜섬웨어가 포함되어 있습니다. 일단 설치가 되면 내부 이동 추가 감염에 사용되는 SMB 구성 요소(component) 존재하게 됩니다. 이는 취약한 자격 증명 정보(Credential) 포함된 목록 Nyetya에서 사용된 것과 유사한 mimikatz 버전을 조합해 사용하는 것으로 보입니다. Cisco Talos에서 확인한 사용자 이름/비밀번호 조합 목록은 아래와 같습니다. 참고로 1995 영화 'Hacker' 중복되는 부분이 있습니다.

 

확인된 비밀번호 목록    

초기 보고서이긴 하지만, 현재 EternalBlue 익스플로잇이 감염을 확산하기 위해 활용되었는지 여부에 대한 증거는 발견하지 못했습니다. 그러나, 지속적인 연구를 통해 새로운 사실을 알게 되면 이를 업데이트할 예정입니다.

 

 기술 세부사항 

악성코드에는 페이로드(Worm payload) 추출하고 실행하는 드로퍼가 포함되어 있습니다. 페이로드는 아래와 같은 추가 바이너리 파일들을 리소스 영역(zlib 압축) 포함하고 있습니다.

 

- DiskCryptor (x86/x64 드라이버 2, 클라이언트 1) 관련된 정상적인 바이너리 파일들

- Nyetya에서 발견된 샘플과 유사한 mimikatz 형태의 바이너리 파일들(x86/x64) 2개. 이는 여러 가지 다른 기법을 사용해, 컴퓨터 메모리에서 사용자 자격 증명을 복구하는데 자주 사용되는 오픈 소스 툴입니다.


페이로드는 C:\Windows\ 디렉토리로 파일을 드롭하게 됩니다. Mimikatz 형태의 바이너리 파일들은 Nyetya 공격에 활용된 기법과 동일한 방식으로 실행됩니다. 페이로드와 스틸러(stealer) 사이의 통신은 named pipe 의해 수행됩니다. 예를 들면 다음과 같습니다.
C:\WINDOWS\561D.tmp \\.\pipe\{C1F0BF2D-8C17-4550-AF5A-65A22C61739C}


그러면 악성코드는 RunDLL32.exe 사용하여 악성코드를 실행하고 추가적인 악성 행위들을 수행하게 됩니다. 악성코드는 아래의 스크린샷을 통해 확인할 있듯이 특정 파라미터로 예약 작업을 생성합니다.     


악성코드는 위에서 언급한 예약 작업뿐만 아니라 시스템을 재부팅하는 번째 예약 작업을 생성합니다.

번째 작업은 즉시 발생하지 않고 나중에 발생하도록 예약됩니다.


이러한 예약 작업들의 이름이 익숙해 보이는데 "왕좌의 게임" 참조한 것으로 보이며, 특히 용들의 이름과 일치합니다. 악성코드는 또한 사용자의 바탕화면에 'DECRYPT' 라는 파일을 만듭니다. 파일을 실행하면 아래와 같은 랜섬 노트가 피해자에게 표시됩니다.


 이러한 종류의 위협이 얼마나 빨리 전 세계로 확산될 있었는지 확인해보기 위해 그래프를 통해 살펴보겠습니다. 아래의 그래프는 피해자의 시스템에 악성코드를 설치하는데 사용된 Fake Adobe Flash update 파일 배포에 사용된 도메인들 하나의 DNS 관련 활동 내역을 의미합니다.


악성코드는 감염된 시스템의 하드 드라이브에 있는 MBR(Master Boot Record) 수정하여, 랜섬 노트를 표시하기 위해 boot process 악성코드 제작자의 코드로 리디렉션합니다. 랜섬 노트는 시스템 재부팅 후에 아래와 같이 표시되며, Cisco 올해 다른 주요 공격에서 관찰한 다른 랜섬웨어 변종, Petya 인해 표시된 랜섬 노트와 매우 유사합니다.

 

 

아래 화면은 TOR 사이트의 결제 페이지입니다.



  결론 

이것은 SMB 같은 2 전파 방법을 활용해 얼마나 효과적으로 랜섬웨어를 전달하고 확산시킬 있는지를 보여준 하나의 예에 불과합니다. 예시에서 초기 벡터는 정교한 공급망 공격(Supply chain attack) 아니었습니다. 보다는 감염된 웹사이트를 활용한 기본적인 드라이브 바이 다운로드에 가까웠습니다. 이는 빠르게 위협 환경의 새로운 표준이 되고 있습니다. 짧은 기간 동안 위협이 빠르게 확산되어 최대한의 피해를 입히는 것입니다. 랜섬웨어는 금전적 이득을 얻는 활용될 있을 아니라 파괴적인 속성 때문에 효과적인 위협 수단으로 선택됩니다. 금전적 이득을 취할 기회와 파괴력이 보장되는 이러한 위협은 지속될 것입니다.

이러한 위협으로 인해 사용자 교육 또한 주요 해결 과제로 떠오르고 있습니다. 공격은 초기 감염 과정에서 사용자의 도움을 필요로 합니다. 만약, 사용자가 Flash 업데이트를 설치하여 시스템 감염에 도움을 주지 않으면 그다지 유해하지 않으며 지역 전체에 피해를 정도의 위협이 되지 못합니다. 하지만, 사용자가 초기 감염에서 도움을 주게 되면 악성코드는 SMB 같은 기존 방법을 활용하여 사용자의 조작 없이 네트워크 전체에 확산됩니다.

 COVERAGE 


AMP(Advanced Malware Protection) 이러한 공격자가 이용하는 악성코드의 실행을 막는 매우 효과적입니다.

 

CWS 또는 WSA 검사는 악성 웹사이트에 접근할 없도록 액세스를 차단하고 이러한 공격에 사용된 악성코드를 탐지합니다.

네트워크 보안 어플라이언스(: NGFWNGIPS  Meraki MX) 위협과 연관된 악의적인 활동을 탐지할 있습니다.

 

AMP Threat Grid 모든 Cisco Security 제품에서 악성 바이너리 파일들을 식별하고 보호 기능을 구축할 있도록 지원합니다.


Umbrella Cisco SIG(secure internet gateway), 사용자가 기업 네트워크 /외부 어디에 있든 악성 도메인, IP URL 연결되지 않도록 합니다.


이번 공격의 경우 이메일은 공격 벡터로 확인되지 않았습니다. 악성코드가 사용자 네트워크에서 시스템 전반으로 전송되는 경우 차단됩니다.