본문 바로가기

Analysis

01. USCYBERCOM Malware Alert's APT Malware

지난 11월 9일 미국 사이버 사령부는 바이러스 토탈을 통해 기밀 사항으로 분류되지 않는 악성코드 샘플들을 공개했었다.


그 중 APT(Advanced Persistent Threats) 공격에 사용된 RAT(Remote Access Trojan) 악성코드가 공개되었다.


본 글은 해당 악성코드를 분석한 글이다.


악성코드 정보는 아래와 같다.


 악성코드명

ctlnetw.exe 

 악성코드 hash(sha-256)

dea3a99388e9c962de9ea1008ff35bc2dc66f67a911451e7b501183e360bb95e 

 관련 그룹

sofacy, Russian Group


이 악성코드는 대부분의 함수를 계산을 통해서 불러오고, 또한 네이티브 함수인 것 처럼 모방된 자체 제작 함수를 사용한다.



악성코드가 실행되면 먼저 해당 악성코드가 .exe 형식의 파일인지 PE 구조를 검사한다.

(이 행위에 대한 큰 이유는 모르겠다.)


중복 실행 방지를 위해서 뮤텍스를 생성한다.


이후 heap 영역이나 I/O 관련한 영역에 대해 초기화를 진행하는데, 이 진행하는 함수들이 얼핏보면 네이티브 함수처럼 보이지만 자체 제작된 함수이다. 그리고 이 함수들을 이용해 각 영역에 대해 초기화를 진행하고 정상적으로 진행되지 않으면 프로그램 자체를 종료시켜버린다.



이 악성코드에서 사용하는 대부분의 함수 호출의 방식이 위 그림과 같은 방식과 계산을 통해 불러오는 방식인데, 위 그림의 방식은 "DLL을 문자열로 호출" -> "사용할 함수를 DLL에서 호출"과 같은 방식이다. 위 그림에서는 ClassSID를 문자열로 불러오는 함수를 호출할 때 해당 방식을 사용했다.


이 루틴에서도 똑같이 DLL을 호출하고 해당 DLL에서 함수를 호출하는 식인데, InternetCrackUrl 함수를 호출한다. 그리고 몇개의 특정 URL을 요소별로 잘라서 저장한다. 이 행위는 이후 행위에서 특정 URL을 사용하기 위해서 수행한다.


DLL 을 호출해 함수를 호출하는 방식으로 RegOpenKey 함수도 호출해 사용하게되는데, 해당 함수로는 "Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings" 경로 아래의 "GlobalUserOffline" 값을 조작하게 된다. 이 "GlobalUserOffine" 값은 인터넷을 창을 띄우지 않고 사용할지 말지를 결정하는 값인데, 해당 악성코드에서는 인터넷 창을 띄우지 않고 인터넷을 사용하기 위해서 조작한다.


이후 행위는 총 3개의 쓰레드에서 이루어지고 그 중 하나의 쓰레드는 의미없는 행위를 무한반복하면서 이 악성코드가 계속해서 백그라운드에서 실행될 수 있도록 한다.


이후 인터넷에 관련된 함수를 호출해온다.


해당 함수들을 이용해 이전에 요소별로 잘라 저장해두었던 특정 URL들에 지속적으로 접속을 시도하는데, 이 행위는 분석가가 C&C 서버를 찾기 힘들도록 하기 위해 존재하는 것이 아닐까 생각한다. 저 특정 URL들이 특정한 행위를 하는데 사용되지 않아 C&C 서버로 판단되지 않기 때문에 분석가가 C&C 서버를 찾는데에 혼란을 주기 위해 존재하는 루틴이다.


그리고 피해자 PC의 볼륨 정보나 컴퓨터 이름, 유저 명을 탈취해서 C&C 서버로 전송한다. APT 공격에 사용된 RAT 악성코드이기 때문에 특성을 고려해본다면 특정 목표의 컴퓨터인지 아닌지를 가려내기 위함으로 생각된다.


또한, 피해자 PC의 팝업창이나 띄워진 윈도우와 띄워진 윈도우 내의 정보등을 가져와 C&C 서버로 전송한다. 해당 악성코드는 APT 공격에 사용된 RAT 악성코드이기 때문에 지속적으로 피해 PC를 관리하고 띄워진 윈도우의 정보를 파악하고 해당 정보를 탈취하거나 해당 정보를 기반으로 다른 명령을 내렸을 것으로 추측된다.


악성코드가 실행되며 C&C 서버에 지속적으로 연결하고 명령을 전달받고 해당 명령을 수행한다.

(현재는 C&C 서버가 닫혀있기 때문에 통신의 요청만 지속적으로 수행된다.)


- Reference


https://twitter.com/CNMF_VirusAlert/status/1060923467200118784


반응형

'Analysis' 카테고리의 다른 글

06. LokiBot  (0) 2019.05.30
05. TrickBot  (0) 2019.05.29
04. Shamoon  (0) 2019.01.14
03. CVE-2018-4878  (0) 2019.01.04
02. GandCrab Ransomware V5.0  (0) 2018.11.30