본문 바로가기

악성코드분석

악성코드분석(1) - 정적 분석

앞의 악성코드 분석(1) - 초기 분석과 같은 실습환경에서 분석

https://neospace.tistory.com/9

 

악성코드분석(1) - 초기분석

<실습 환경> 실습 환경 실습 프로그램 Vmware Workstation 16 분석 프로그램 Ubuntu 20.04 , cuckoo sandbox Windows 버전 Windows 7 (32bit) <악성코드 정보> 악성코드 fb55f300cbcea6d62e33eb76a196849d1a67ce91..

neospace.tistory.com


Cuckoo Sandbox와 Stub_PE 도구를 이용한 정적 분석

[알게 된 내용]

Cuckoo Sandbox에서 Static AnalysisSection부분 결과를 확인 가능

정적 분석 도구인 Stub_PE를 통해 알맞게 분석되었는지 확인, 결과가 같음을 확인함.


[알게된 내용]

Cuckoo Sandbox에서 Static AnalysisResources부분 결과를 확인 가능

정적 분석 도구인 Stub_PE를 통해 알맞게 분석되었는지 확인, 결과는 같음을 확인

(RT_ICON 부분 값을 대표적으로 캡처함.)


 

Cuckoo Sandbox에서 Static Analysisimport부분 결과를 확인 가능

(정적 분석 도구인 Stub_PE를 통해 알맞게 분석되었는지 확인)


Cuckoo Sandbox에서 Static Analysisimport부분 결과를 확인 가능

(정적 분석 도구인 Stub_PE를 통해 알맞게 분석되었는지 확인 결과 같음)

 

[Import 함수 정리]

Kernel32.dll

- 메모리 관리, 파일 입/출력, 프로그램 코드/실행 등 기본적인 기능이 내장되어 있다.

 

User32.dll

-윈도우, 대화 상자, 메뉴 등을 관리
-윈도우 USER 구성요소를 구현

advapi32.dll

- 어떤 맬웨어는 advapi32.dll로 가장하여, 특히 C : \ Windows \ System32 폴더에 있지 않을 때 위장

 

oleaut32.dll

-“32비트 Windows용 개체 연결 및 포함 자동화"의 약자
-다른 응용 프로그램에서 만든 파일과 정보를 처리할 수 있음.

version.dll

-악성파일로 교체되면 보안 제품들의 정상적인 실행을 방해하기 위한 기능 수행특정 프로세스 강제 종료 시도
-Windows 버전을 확인하는데 사용됨.

gdi32.dll

- 그래픽 장치 인터페이스(GDI) 함수들을 노출시키고, 이것들을 디스플레이나 프린터에 출력되는 원시적인 드로잉 함수들을 수행하는 역할

 

ole32.dll

-  다른 응용프로그램에서 만든 문서나 객체를 포함시킬 때 사용하는 모듈

 

comctl32.dll

- 상태 바, 진행 바, 툴 바 등과 같은 운영체제에서 지원하는 기능에 대한 응용프로그램의 접근을 지원


BinText 도구를 이용한 정적 분석

Cuckoo Sandbox에서 Static AnalysisStrings부분 결과를 확인 가능

(정적 분석 도구인 Bintext를 통해 알맞게 분석되었는지 확인, 결과 같음)

- 위의 파일은 Win32에서 실행되는 파일임을 알 수 있음.


PeStudio 도구를 이용한 정적 분석

[VirtualAlloc], [GetProcAddress] :

DLL Injection에서 자주 사용(특정 프로세스에 DLL Injection 실행)

 

[WirteFile] : 핸들 값 받아서 파일을 씀 / CreateFile로 반환 받은 핸들 값을 통해 파일을 수정 및 변조

 

[VirtualProtect] : 메모리 보호 설정 값 변경

[LockResource], [LoadResource], [FreeResource] :

Resource 섹션에 있는 리소스 사용 API //Resource 섹션에 암호화된 데이터를 해제하여 메모리에 기록

[CreateThread] : Thread 관련 API

*악성코드에 자주 사용되는 API 함수이기도 함*

 

pestudio 분석 도구를 이용해 파일에 사용된 API 함수 확인


HxD 도구를 이용한 정적 분석

1.“4D 5A”로 시작해 64byte까지가 Image_Dos_Header 부분, 이 부분은 PE 구조를 가지고 있는 파일인지를 구분해줌.
2.“50 45 00 00”으로 시작하는 부분이 NT_Header 부분, 이 부분에는 파일 실행에 필요한 부분이 존재
3.PE 구조를 가진 파일Microsoft의 운영체제 Windows 3.1부터 지원되는 실행 파일의 구조를 말함. 확장자의 종류로 EXE, SCR, DLL, OCX, SYS, OBJ가 있음.
4.CPU 타입에 따라 저장되는 값으로 “4C 01” Intel CPU을 의미, 이 파일은 Intel CPU와 호환성을 가짐.

 

'악성코드분석' 카테고리의 다른 글

악성코드 분석 도구  (0) 2021.12.15
악성코드분석(1) - 동적 분석  (0) 2021.12.15
악성코드분석(1) - 초기분석  (0) 2021.12.15
PEview 도구를 이용한 PE Header 분석  (0) 2021.12.15