Information Security ˗ˋˏ ♡ ˎˊ˗

Security/Reversing

[악성코드정적분석] PracticalMalwareAnalysis-Lab01-03 분석

토오쓰 2020. 4. 24. 22:55

[Lab01-03.exe]

[Lab01-03_unpacked.exe_]

 

 

1. Virustotal에 업로드하고 보고서를 확인하자. 기존 안티바이러스 정의된 것과 일치하는가?

추측: Trojan, packer가 있는 것을 봐서는 패킹이 되어있을 확률이 높다. 악성코드일 확률이 높음을 알 수 있다.

 

 

2. 패킹이나 난독화의 흔적이 있는가? 이유는?

[PEiD.exe]

추측: FSG1.0 버전으로 패킹이 되어있는 것을 알 수 있다.

FSG로 패킹이 되어있는 것을 언패킹 하기 위해 사용한 tool:  VMUnpacker

 

 

[VMUnpacker.exe]

해당 exe파일을 언패킹

 

 

파일 사이즈가 커진 것을 볼 수 있다.

 

 

[PEiD.exe]

 

언패킹이 된 것을 알 수 있다.

 

 

[virustotal.com]

추측: 바이러스 토탈 사이트에서 언패킹 한 exe파일을 열어본 결과, 악성코드로 추측할 수 있다.

 

 

3. 임포트를 보고 악성코드의 기능을 알아낼 수 있는가? 그렇다면 어떤 임포트를 보고 알 수 있었는가?

[Dependency Walker]

패킹되어 있는 파일 [Lab01-03.exe]

KERNEL32.DLL

- LoadLibraryA: 지정된 모듈을 호출 프로세스의 주소 공간에 로드한다.

- GetProcAddress: 지정된 DLL (동적 연결 라이브러리)에서 내보낸 함수 또는 변수의 주소를 검색한다.

=> 패킹에 관련된 API 함수이다.

 

 

언패킹한 파일 [Lab01-03_unpacked.exe_]

MSVCRT.DLL

OLEAUT32.DLL

OLE32.DLL

- OleInitialize

- CoCreateInstance: 지정된 CLSID와 관련된 클래스의 초기화되지 않은 단일 객체를 만든다. 로컬 시스템에서 하나의 객체만 만들려면 CoCreateInstance를 호출한다.

- OleUninitialize

 

추측: 인스턴스를 생성하고 그것과 관련하여 작업을 한다고 추측할 수 있다.

 

 

4. 감염된 장비에서 이 악성코드를 발견하기 위해 사용한 네트워크 기반의 증거는 무엇인가?

 

[strings.exe]

패킹되어 있는 파일 [Lab01-03.exe]

API 함수가 나오는 것을 볼 수 있다.

 

 

언패킹한 파일 [Lab01-03_unpacked.exe_]

URL이 나오는데, 특정 사이트의 URL이 나오는 것을 알 수 있다.

 

 

추측: 이 악성코드가 특정 사이트를 접속하거나 이곳에 있는 정보를 가지고 악의적인 작업을 할 것이라고 추측할 수 있다. 또한 관련 네트워크 작업을 할 것이라고 추측할 수 있다.

 

결론: 이 [Lab01-03.exe] 파일도 악성코드라고 추측할 수 있으며, 패킹이 되어있어서 언패킹을 하였을 때, 해당 정보를 찾을 수 있었다. 의심스러운 URL이 strings에 포함이 되는 것을 보아 해당 사이트에 접속하거나 그곳에 있는 정보를 가지고 악의적인 작업을 할 것이라고 예상할 수 있다.