1. 악성코드 분석 방법론과 기법
2009.05.20
㈜ 안철수연구소
ASEC (AhnLab Security Emergency response Center)
Anti-Virus Researcher, CISSP
장 영 준 주임 연구원
2. 1. 악성코드 분석 방법론
1. 악성코드 분석을 위한 사전 지식
윈도우 운영체제 이해
윈도우 네트워크 이해
윈도우 프로그램 이해
다양한 프로그램 언어 및 컴파일러 특성 이해
다양한 파일 구조 이해
파일 보호 기법 (Packer, Protector, Anti-Debugging, Encryption) 특성 이해
다양한 파일 포맷 분석에 필요한 유틸리티 활용법
2. 악성코드 분석 방법론
동적 분석 (Dynamic Analysis) – 파일 실행을 통한 증상 기반 분석,
시간소요 적음, 자세한 분석 어려움
정적 분석 (Static Analysis) – 리버스 엔지니어링 (Reverse Engineering) 을 통한
코드 기반 분석, 시간소요 많음, 자세한 분석 가능
2
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
3. 1. 악성코드 분석 방법론
3. 악성코드 분석 프로세스
동적 분석 (Dynamic Analysis)
파일 분석
증상 분석
정적 분석 (Static Analysis)
정보 분석
코드 분석
엔진 제작
1. 파일 형태 분석
1. 시스템 분석
1. 증상 추가 분석
1. 디스어셈블링
1. 악성코드 판단
2. 사용 API 분석
2. 프로세스 분석
2. 각종 정보 수집
2. 디버깅
2. 진단 시그니쳐
및 함수 제작
3. 문자열 분석
3. 레지스트리 분석
3. 관련 사항 확인
3. 분석정보 작성
4. 네트워크 분석
5. 기타 증상 분석
분석
3
프로세스
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
4. 1. 악성코드 분석 방법론
4. 악성코드 분석 환경
일반 하드웨어 이용
일반 하드웨어를 이용한 윈도우 시스템으로 구성
외부 네트워크와 단절된 독립 네트워크를 구성
가상 시스템 (Virtual System) 이용
MS의 Virtual PC 2007 또는 Vmware의 Vmware Workstation 을 이용한
가상 윈도우 시스템과 가상 네트워크를 구성
[Virtual PC 2007]
4
[Vmware Workstation ]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
5. 2. 악성코드 분석 도구
1. 파일 분석
실행 파일의 구조와 헥사 코드(Hex Code) 분석
윈도우 – Frhed, WinHex
도스 – HE (Hexa Editor), HT(Hexa ediT), HIEW(Hackers vIEW)
[FrHed]
5
[PEView]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
6. 2. 악성코드 분석 도구
2. 실행 파일 구조 분석
실행 파일의 구조 분석, 문자열 분석, 실행 파일 재생성
윈도우 – LoadPE, PE Tools, PEiD, PEView, Dependency Walker, Import ReConstructor
PE Explorer, Stud_PE, PE Validator, ProcDump, BinText, WinDiff
도스 – PeDump, Handle
[PEiD]
[PE Tools]
6
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
7. 2. 악성코드 분석 도구
3. 스크립트 파일 분석
인코딩된 스크립트 파일 분석
윈도우 – Malzilla (malzilla.sourceforge.net)
[Malzilla]
7
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
8. 2. 악성코드 분석 도구
4. 시스템 분석
Install Control for Windows – 시스템의 파일 변화, 레지스트리 변화 추적
InstallWatch – 시스템의 파일 변화, 레지스트리 변화 추적
Winalysis – 시스템의 파일 변화, 레지스트리 변화 및 기타 시스템 변화 추적
[Winalysis]
[Install Control for Windows]
8
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
9. 2. 악성코드 분석 도구
5. 프로세스 분석
Process Explorer – 시스템에 생성되는 프로세스 변화 분석
TaskInfo – 프로세스 변화 및 시스템 상태 분석
[Process Explorer]
9
[TaskInfo]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
10. 2. 악성코드 분석 도구
6. 레지스트리 분석
Registar Lite – 레지스트리 분석 및 편집
Reg.exe – 도스 모드 레지스트리 편집
[Registar Lite]
10
[Reg.exe]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
11. 2. 악성코드 분석 도구
7. 네트워크 패킷 분석
Ethereal – 네트워크 패킷 분석
Analyzer – 네트워크 패킷 분석
[Ethereal]
11
[Analyzer]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
12. 2. 악성코드 분석 도구
8. 네트워크 포트 분석
TCPView – 실시간 네트워크 포트 분석
Active Ports – 실시간 네트워크 포트 분석
Fport – 도스 모드 네트워크 포트 분석
[TCPView]
12
[Active ports]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
13. 2. 악성코드 분석 도구
9. 시스템 모니터링
Process Monitor – 특정 프로세스의 파일, 레지스트리, 네트워크 엑세스
API Monitor – 특정 프로세스의 API 사용
[Process Monitor 실행]
13
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
14. 2. 악성코드 분석 도구
10. 은폐 파일 분석
GMER – 프로세스, 파일, 레지스트리 및 네트워크 은폐 탐지와 분석
F-Secure BlackLight – 프로세스, 파일, 레지스트리 및 네트워크 은폐 탐지와 분석
[GMER 실행]
[F-Secure BlackLight 실행]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
15. 2. 악성코드 분석 도구
11. 실행 파일 디스어셈블링
W32Dasm – 실행 파일 디스어셈블링과 디버깅
IDA – 실행 파일 디스어셈블링
[W32Dasm 실행]
[IDA 실행]
15
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
16. 2. 악성코드 분석 도구
13. 실행 파일 디버깅
WinDBG – 실행 파일 디버거
SoftIce – 강력한 커널 모드 디버깅
OllyDbg – 범용 실행 파일 디버거
[OllyDbg 실행]
16
[SoftICE 실행]
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
17. AhnLab
The Joy of Care-Free Your Internet World
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.
AhnLab, the AhnLab logo, and V3 are trademarks or registered trademarks of AhnLab, Inc.,
in Korea and certain other countries. All other trademarks mentioned in this document are the property of their respective owners.
17
Copyright (C) AhnLab, Inc. 1988-2009. All rights reserved.