기초 분석
VirusTotal - AntiVirus engine 검색
VirusTotal 조사 결과, 여러 AntiVirus engine이 dgrep.exe를 악성코드 파일로 식별하였다.
- vbscript.dll이 main 동적 라이브러리인 것으로 확인된다.
- 해당 악성코드는 트로이 목마(trojan) 공격으로 분류되었다.
vbscript.dll : Windows 내에서 VBScript (Visual Basic Script) 코드를 실행하는 주요 라이브러리 파일. Microsoft에서 개발되었으며, web 환경의 JavaScript처럼 주로 Windows 환경 내에서 자동화를 위해 사용된다. .vbs 스크립트를 실행하여 VBScript 명령어를 통역해 시스템 자원, 파일 명령어 등과 상호작용하는 역할을 수행한다.
- UPX로 압축된 Win32 실행 파일
- SVK-Protector v1.11로 packing 됨
- 2015-10-09에 최초 생성된 것으로 확인된다.
'107.163.241.198' ip 주소와 'api.wisemansupport.com' 도메인 주소가 확인됐다.
Zenbox 등의 샌드박스 환경에서의 검토 결과, 해당 파일은 트로이 목마 공격을 수행하는 악성코드로 식별되었다.
정적 분석
패킹 여부 검사 - PEiD, Exeinfo PE
주요 분석 표인트
- EP Section ('.mmmym') : 일반적이지 않은 이름으로 난독화 혹은 수동 조작됐다.
- SKVP 1.11 -> Pavol Cerven : SKVP v 1.11로 패킹되었다.
- Big sec. 02 [ UPX1 ] : UPX로 압축되었을 확률이 높다.
RL!Depacker v 1.15
RL!Depacker v 1.15를 사용하여 해당 파일을 depack 한 후 다시 확인해봤다.
해당 파일은 Microsoft Visual C++ 6.0에서 작성되었으며, 바뀐 EP section을 통해 제대로 depack 되었음을 알 수 있다.
문자열 검색 - binText
Depack 된 파일 확인 결과, 스크립트 관련 동적 라이브러리인 vbscript.dll 과 실행 파일인 rundll32.exe 를 식별하였다.
rundll32.exe : Windows 운영 체제에서 DLL (Dynamic Link Library) 파일에 포함된 함수나 코드를 실행하는 데 사용되는 시스템 파일로, 주로 Windows의 시스템 기능이나 제어판 설정 같은 기능을 실행할 때 사용된다. 악성코드는 이를 악용하여 악성 DLL 파일을 실행하는 데 사용하기도 한다.
추가적으로, cmd.exe를 통해 ping을 전송하는 네트워크 확인 작업 및 기초 분석에서 확인한 'api.wisemansupport.com' 과 연관된 것으로 보이는 'wiseman.exe' 파일도 식별되었다.
PEview
binText를 통해 확인한 동적 라이브러리와 각각 실행하는 동작을 PEview로 확인하였다.
동적 분석
Cports
dgrep.exe 파일을 실행하면, 가장 먼저 rundll32.exe가 실행되면서 앞서 기초 분석에서 확인한 IP 주소 '107.163.142.198'과 '107.163.142.197'로 각각 원격 포트 6520, 12954 TCP 패킷이 전송되는 것을 확인했다.
이후, Local IP에서의 UDP와 TCP 패킷 전송이 차례로 이뤄진 뒤 rundll32.exe가 계속 실행 중인 것을 확인했다.
Process Monitor
1. dgrep.exe 파일이 최초 실행되면서 1) 무작위로 이름 지어진 파일(cglca.exe)이 생성되고, 2) cmd.exe 실행이 확인됨
2. 명령어 실행 파일에서 1) PING 명령어 전송 및 2) cglca.exe 파일 실행 확인
3. cglca.exe 파일에서 1) dgrep.exe 삭제, 2) wiseman.exe 파일 생성, 3) 무작위명 파일, 4) rundll32.exe 실행 확인
4. rundll32.exe 파일에서 1) cglca.exe 파일 삭제 및 2) 미상의 1.txt 파일 생성 확인
5. wiseman.exe 파일은 실행 후 지속적인 TCP 연결 작업 수행 확인
Process Explorer
- 가장 먼저 dgrep.exe가 실행되면서 cmd.exe 명령어 프로그램을 통해 conhost.exe 및 PING.EXE 파일이 시작된다.
- 그 후, rundll32.exe와 wiseman.exe가 계속 실행 상태인 것을 확인했다.
System Explorer
SystemExplorer의 Snapshot 기능을 통해 dgrep.exe 파일 실행 전후를 비교한 결과, 1) wiseman.exe 실행 파일과 2) 1.txt, 그리고 3) 무작위 문자열로 적힌 숨김 파일에 ReadMe.txt 등이 생성되었다.
실제로 확인해보면, 실행 시간과 텅 빈 내용이 저장됐다.
Autoruns
rundll32.exe를 실행하는 EvtMgr 파일과 wiseman.exe 파일이 시작 프로그램에 자동으로 등록된 것을 확인했다.
Wireshark
Cports에서 확인한 의심 IP '107.163.241.197', '107.163.241.198' 네트워크 패킷을 확인한 결과, VM 기기 IP 주소에서 전송하는 연속된 TCP Retransmission Timout으로 인해 RESET 패킷을 반환 받는 걸 확인함.
결론
기초 분석 결과
- 스크립트 작성 동적 라이브러리인 vbscript.dll가 주를 이룬 트로이 목마 공격으로 식별된다.
- UPX로 압축된 Win32 PE 파일로, depacking 과정이 필요하다.
- 'api.wisemansupport.com' 도메인과 '107.163.21.198' IP 주소가 연관된 것을 확인.
정적 분석 결과
- 의미 불명의 EP section을 통해 해당 파일이 패킹되었음을 확인 가능하다.
- 시스템 자원, 파일 명령어 기능을 수행하는 'vbscript.dll'과 악성코드가 악성 DLL 실행에 사용할 수 있는 'rundll32.exe' 실행 파일을 확인함.
- 의심 도메인 'api.wisemansupport.com'과 연관된 것으로 추정되는 'wiseman.exe' 실행 파일 확인함.
동적 분석 결과
- dgrep.exe 파일을 실행하면 무작위명의 실행 파일(e.g. cglca.exe)이 생성되고, cmd.exe가 실행됨.
- cmd.exe 파일은 PING 명령을 통해 네트워크 연결을 확인한 뒤, 무작위명 실행 파일을 실행함.
- 무작위명 실행 파일은 dgrep.exe 삭제하, wiseman.exe 파일 생성, 그리고 rundll32.exe 실행을 확인함
- wiseman.exe 파일이 실행 상태로 남아 지속적인 TCP 연결을 시도하는 것을 확인함.
- rundll32.exe 파일에서 무작위명 실행 파일 삭제 및 미상의 1.txt 파일 생성 후, 실행 상태로 남음.
정리하면, dgrep.exe 파일은
- 트로이 목마 공격을 수행하는 악성 파일로,
- 실행하면 지속적으로 네트워크 연결을 시도하는 wiseman.exe와 rundll32.exe가 시작 프로그램에 등록되고, 실행 상태로 유지된다.
- 중간 과정의 IP 주소 '107.163.142.198'과 도메인 주소 'api.wisemansupport.com'이 현재는 동작하지 않아 위협적이지 않지만, 재활성화될 경우 트로이 목마 공격이 수행될 것으로 확인된다.
'리팩토링' 카테고리의 다른 글
리팩토링 17주차. Snort/Snort Rule Signature (1) | 2024.11.04 |
---|---|
리팩토링 16주차. 악성코드 분석 보고서 작성 (0) | 2024.10.31 |
리팩토링 14주차. 악성코드 분석 실습 (1) | 2024.10.10 |
리팩토링 13주차. 악성코드 정적/동적 분석 도구 (1) | 2024.10.04 |
리팩토링 12주차. 악성코드 분석 환경 구성 & 악성코드 샘플링 웹사이트 (1) | 2024.09.24 |