바이러스 백신 프로그램으로 위장한 신종 Android 악성 프로그램 KevDroid 발견

2018년 4월 2일 월요일


바이러스 백신 프로그램으로 위장한 신종 Android 악성 프로그램 KevDroid 발견


이 블로그 게시물은 Cisco 안정수님의 도움을 받아 워렌 머서(Warren Mercer), 폴 라스카네어(Paul Rascagneres), 빅토르 벤투라(Vitor Ventura)가 공동으로 작성했습니다.



요약


며칠 전 EST Security는 바이러스 백신 프로그램으로 위장해 Android 모바일 플랫폼을 공격하는 악성 프로그램에 관한 기사를 게시했습니다. 한국 언론은 Group 123이라는 해커 단체가 이 Android 악성 프로그램에 연루되어 있을지도 모른다는 입장을 밝혔고 Cisco Talos는 이 악성 프로그램을 조사하기로 결정했습니다. 

Talos는 이전의 보고서를 다시 살펴보고 Group 123의 과거 공격 형태를 되짚어보는 과정에서 몇 가지 흥미로운 사실을 발견했습니다.


Talos는 Android 원격 관리 도구(RAT)의 두 가지 변종을 발견했습니다. 이 두 가지 변종은 감염된 장치에서 정보(예: 연락처, SMS, 통화 기록)를 탈취하고 피해자의 통화 내용을 녹음한다는 공통점을 가지고 있습니다. 그 중 한 가지 변종은 알려진 Android 취약점(CVE-2015-3636)을 악용하여 감염된 Android 장치의 루트 액세스 권한을 획득합니다. 두 가지 변종이 탈취한 데이터는 HTTP POST를 통해 고유 명령 및 제어(C2) 서버로 전송됩니다. 통화 내용을 녹음하는 기능은 GitHub에서 확보할 수 있는 오픈소스 프로젝트를 토대로 구현됐습니다. Talos는 이 악성 프로그램을 "KevDroid"라고 명명했습니다.



KevDroid가 사용하는 것과 동일한 C2 서버에 호스팅 되는 또 다른 RAT도 발견됐습니다(이 악성 프로그램은 Windows를 표적으로 삼습니다). 이 악성 프로그램은 특이하게도 PubNub 플랫폼을 C2 서버로 사용합니다. PubNub는 글로벌 데이터 스트림 네트워크(DSN)입니다. 사이버 공격자는 PubNub API를 사용하여 감염된 시스템에 명령을 하달합니다. Talos는 이와 같은 행동 패턴을 반영하여 이 악성 프로그램을 "PubNubRAT"라고 명명했습니다.


현재로서는 Group 123이 이런 악성 프로그램에 연루되어 있다는 증거는 발견되지 않았습니다. 다수의 전술, 수법, 절차상의 정보를 확보하긴 했으나 Group 123가 실제로 연관되어 있다고 단정하기에는 부족합니다.



Android 악성 프로그램: KevDroid

 

변종 1


KevDroid의 첫 번째 변종은 샘플이 비교적 적고 EST Security가 최근 기사에서 거론한 샘플과 유사한 특징을 보입니다. KevinDroid로 명명한 이유는 Android 제작자 태그에 "Kevin"이라고 명시되어 있고 일부 다른 아티팩트에서 "Kevin"이라는 이름이 언급되기 때문입니다. KevDroid는 aykuttasil 프로젝트에 근거를 두고 있습니다. 이 프로젝트의 목적은 Android 장치로 이뤄지는 통화의 내용을 녹음할 수 있는 라이브러리를 제공하는 것입니다. 사이버 공격자는 악성 프로그램에 원래의 이름을 사용했습니다(아래 그림 참조).



이 애플리케이션은 장치에 저장된 다음과 같은 정보를 탈취하는 데 목적을 두고 있습니다.


• 설치되어 있는 애플리케이션

• 전화번호

• 전화기 고유 ID

• 위치(애플리케이션이 GPS를 켜려고 시도합니다) - 이와 같은 유형의 스파이 도구는 위치 정보를 10초마다 

    공격적으로 수집합니다.

• 저장되어 있는 연락처 정보(이름, 전화번호, 이메일, 사진 등)

• 저장되어 있는 SMS

• 통화 기록

• 저장되어 있는 이메일

• 사진

• 통화 녹음


사이버 공격자가 KevDroid로 수집한 정보를 회수하는 데 성공할 경우 피해자는 다양한 피해를 입을 수 있습니다. 모바일 기기가 SNS 활동의 일환으로 사용되다 보니 모바일 기기에는 많은 양의 정보가 저장되어 있습니다. 사진, 비밀번호, 은행 정보, 대인관계 같은 민감한 정보도 예외는 아닙니다. 이와 같은 데이터가 유출되면 비밀을 유지해야 하는 영상이나 정보를 사용한 협박, 자격 증명 추출, 다단계 토큰 액세스(SMS MFA), 은행 계좌/금전 피해, 이메일/문자를 통한 비공개 문서 열람 같은 여러 가지 문제에 휘말릴 수 있습니다. 많은 사용자가 모바일 기기로 회사 이메일에 액세스하는데 자칫하면 KevDroid로 귀결되는 사이버 스파이 활동의 표적이 될 수 있습니다.


APK 샘플은 2018년 3월에 아래의 URL에서 발견됐습니다.


• hxxp://cgalim[.]com/admin/hr/1.apk



사이버 공격자는 다음 URL의 서버에서 데이터를 추출합니다.


APK 패키지 이름은 "Update"이며 설치 아이콘은 Droid 로고입니다(아래 그림 참조).




변종 2


KevDroid의 두 번째 변종은 첫 번째 샘플보다 파일 사이즈가 더 크며 2018년 2월에 동일한 URL에서 발견됐습니다. 이 샘플의 이름은 "PU"이고 아이콘 로고는 비어있습니다. 이 악성 프로그램의 아키텍처는 첫 번째 변종과 약간 다릅니다. 일례로, 이 변종은 데이터를 저장하는 데 SQLite 데이터베이스를 사용합니다.


이 변종은 첫 번째 변종과 동일한 기능 외에도 다음과 같은 몇 가지 기능을 추가로 갖추고 있습니다.


• 녹화

• 녹음

• 웹 히스토리 탈취

• 파일 탈취

• 장치의 루트 액세스


장치의 루트 액세스 기능은 APK에 첨부된 ELF 파일에 의해 실행됩니다. 이 파일의 이름은 "POC"이며 32비트 버전의 운영 체제를 지원합니다. 이 파일은 GitHub에서 확보한 코드를 사용하여 장치의 CVE-2015-3636 취약점을 악용하려고 시도합니다. 목적은 감염된 장치의 루트 액세스 권한을 획득하는 것입니다. 장치의 루트 액세스 권한을 획득한 악성 프로그램은 효과적으로 상위 권한을 획득하여 (다른 애플리케이션에서 파일 가져오기 같은) 보다 심층적인 활동에 돌입할 수 있습니다. 이는 악성 프로그램이 사용자의 반응이나 입력을 요구하지 않으면서 은밀히 공격을 수행하기 위해 종종 사용하는 일반적인 수법입니다.


C2 서버는 앞서 설명한 것과 동일합니다(아래 그림 참조).




Windows 악성 프로그램: PubNubRAT

 

악성 프로그램 샘플


다음 URL의 서버에서 Windows 바이너리가 발견됐습니다.


• hxxp://cgalim[.]com/admin/hr/hr.doc



이 바이너리의 목적은 아래의 파일을 추가로 다운로드하는 것입니다.


• hxxp://ebsmpi[.]com/ipin/360/Ant_4.5.exe

• hxxp://ebsmpi[.]com/ipin/360/Ant_3.5.exe

• hxxp://ebsmpi[.]com/ipin/360/desktops.ini



Talos는 서버에서 다음과 같은 파일을 다운로드하는 샘플을 추가로 발견했습니다.


• hxxp://cgalim[.]com/admin/1211me/Ant_4.5.exe

• hxxp://cgalim[.]com/admin/1211me/Ant_3.5.exe

• hxxp://cgalim[.]com/admin/1211me/desktops.ini



다운로드된 실행 파일은 .NET으로 개발한 RAT이고 desktops.ini 파일은 구성 파일입니다(0x17 키로 구성된 XOR). 이 악성 프로그램은 퍼블릭 서비스를 C2 서버로 사용하고 PubNub도 사용합니다. 다음은 사이버 공격자의 토큰과 URL이 포함된 구성 파일을 해독한 결과입니다.



ps.pndsn.com

Process

sub-c-2199cb5c-f20a-11e7-acf8-26f7716e5467

pub-c-cdb76f31-abb8-4c47-aed3-d8c1de7bf5e6

sec-c-ZjM3MTY1ZWMtNjg4OS00MzJjLTlkZjgtZGQzN2EzOGI4MDU1

cip-c-Awwqe1wwas12312w

9919



사이버 공격자는 PubNub API를 사용하여 감염된 시스템에 명령을 전송합니다. 전송되는 명령어는 아래와 같습니다.



이 악성 프로그램은 파일 탈취, 파일 다운로드, 명령어 실행, 프로세스 중지, 스크린샷 생성(tmp0120.ini 파일로 저장) 같은 작업을 수행할 수 있습니다.


사이버 공격자가 합법적인 서비스를 사용할 경우 방어하기 쉽지 않습니다. (특히, HTTPS를 통한 암호화가 요청에 사용된 경우) 합법적인 네트워크 트래픽에 숨어 있는 악성 통신을 판별하기 어렵습니다.


Talos는 PubNubRAT 샘플에서 다음과 같은 몇 가지 흥미로운 내용을 발견했습니다.



Haizi란 중국어로 아이를 의미합니다. 이 문자열만으로 이 악성 프로그램을 중국인이 개발했다고 단언하기는 어렵습니다. 오히려 분석가에게 보내는 메시지일 가능성이 높습니다. 예전에 올림픽 디스트로이어(Olympic Destroyer) 게시물에서 언급했듯, 사이버 공격자들은 분석가에게 혼선을 주기 위해 위장 술책을 사용하기도 합니다. 이 문자열도 그런 방식의 위장술일 수 있습니다.



감염 경로: 비트코인 및 중국


첫 번째 실행 파일은 bitcoin-trans.doc라는 RTF 문서를 다운로드하고 실행합니다.




문서는 한국어로 되어 있습니다. 중국이 얼마나 많은 비트코인을 보유하고 있으며 이를 어떻게 처리하는지 설명하는 내용이 담겨 있습니다. 현재의 비트코인 거래 상황과 향후 예상되는 비트코인의 가치도 언급되어 있습니다.



결론


원래 Talos는 Group 123의 연루설 때문에 이 악성 프로그램을 자세히 조사했습니다. 그러나 두 가지 악성 프로그램 샘플과 Group 123의 연관성을 확신할만한 증거는 발견되지 않았습니다. Group 123뿐만 아니라 다른 사이버 범죄 집단도 퍼블릭 클라우드 인프라를 C2 서버로 사용하는 수법을 동원한 적이 있기 때문에 공격 수법은 별 의미가 없습니다. 또한 C2 서버는 한국에서 호스팅 되며, 이 악성 프로그램은 한국 사용자를 표적으로 삼는 것으로 알려져 있습니다. 그러나 이 정보만으로는 확실한 결론을 도출하기 어렵습니다. 그와 관련하여 Talos는 정보를 훔치고 감염된 시스템을 제어하려는 Android 기반의 신종 악성 프로그램과 Windows 기반의 악성 프로그램을 발견했습니다. 이런 악성 프로그램 샘플들은 아직 명문화되어 있지 않고 대대적으로 유포되지 않았지만 이 게시물이 새로운 공격 수법에 관심을 갖는 계기가 되기를 바랍니다.



대응


고객이 위협을 탐지하고 차단하는 데 유용한 기타 솔루션은 다음과 같습니다.




AMP(Advanced Malware Protection)는 사이버 공격자가 사용하는 악성 프로그램이 실행되는 것을 방지하는 데 이상적입니다.


CWS 또는 WSA 웹 검사 솔루션은 악성 웹사이트에 대한 접속을 방지하고 이 공격 수법에 사용되는 악성 프로그램을 탐지합니다.


Email Security는 해커가 공격의 일환으로 보낸 악성 이메일을 차단할 수 있습니다.


NGFW, NGIPS, Meraki MX와 같은 Network Security 어플라이언스는 이런 위협과 연계된 악의적 활동을 탐지할 수 있습니다.


AMP Threat Grid는 악성 바이너리를 식별하고 모든 Cisco 보안 제품에 보호 기능을 구축하는 데 효과적입니다.


Talos의 인터넷 보안 게이트웨이(SIG)인 Umbrella는 사용자가 회사 네트워크 안팎에서 악성 도메인, IP 및 URL에 연결하는 것을 방지합니다.


Open Source Snort Subscriber Rule Set 고객은 Snort.org에서 최신 룰 팩을 구매해 다운로드함으로써 최신 상태를 유지할 수 있습니다.



IOC


KevDroid:


 URL: hxxp://cgalim[.]com/admin/hr/1.apk

 변종 1: f33aedfe5ebc918f5489e1f8a9fe19b160f112726e7ac2687e429695723bca6a

 변종 2: c015292aab1d41acd0674c98cd8e91379c1a645c31da24f8d017722d9b942235

 C2: hxxp://cgalim[.]com/admin/hr/pu/pu.php


 PubNubRAT:


 URL: 


 hxxp://cgalim[.]com/admin/hr/hr.doc

 hxxp://ebsmpi[.]com/ipin/360/Ant_4.5.exe

 hxxp://ebsmpi[.]com/ipin/360/Ant_3.5.exe

 hxxp://ebsmpi[.]com/ipin/360/desktops.ini


 샘플: 


 dd3f5ad44a80e7872e826869d270cbd5c0dc4efafff6c958bd1350ce1db973eb: hr.doc

 7a82cc0330e8974545d5a8cdca95b8d87250224aabc6a4f75a08dddaebb79670: hr.doc

 90abfe3e4f21b5a16cd1ff3c485f079f73f5e7bbaca816917204858bb08007fc: Ant_4.5.exe

 d24d1b667829db9871080b97516dbe2e93ffaa3ac6fb0a4050a7616016c10d32: Ant_3.5.exe

 86887ce368d9a3e7fdf9aa62418cd68daeea62269d17afb059ab64201047e378:Servlet.exe(hr.doc 변종)

 9ff7240c77fca939cde0eb1ffe7f6425c4dcfde2cdd1027dde6d07386c17f878: Ant_3.5.exe

 4cb16189f52a428a49916a8b533fdebf0fe95970b4066ce235777d3e95bff95b: 360TS_Setup_Mini.exe


 RTF: 6b1f2dfe805fa0e27139c5a4840042599262dbbf4511a118d3fba3d4ec35f2d7 



폴 라스카네어가 11:48 AM에 게시 

레이블: Android, Group123, KevDroid, 한국, 악성 프로그램 분석, PubNub, PubNubRAT, RAT