300x250
PE파일 포맷
PE(Portable Excutable)포맷
- 윈도우에서 사용되는 실행 가능한 파일 형식
- exe, dll, obj, sys등의 확장자를 가진 파일들이 여기에 해당된다.
PE 구조
- 헤더, 섹션으로 구성
- 헤더 : 파일을 실행할 때 맨 처음 시작해야 할 코드의 시작 부분에 대한 정보를 포함한다
- 섹션 : 어셈블리 코드, 소스 코드내에서 변수들, 이미지와 문서 파일등의 리소스를 담고있다.
*** 즉, 윈도우에서 실행 가능한 샐행 파일이 가지는 구조
*** PE 구조를 분석해주는 툴
PEView, PEiD, EXEINFOPE, StudPE, peframe.py 등 많은 종류의 PE 분석 툴들이 있다.
peframe.py
- 파이썬으로 작성되었고 소스 코드가 공개되어 있는 오픈소스 도구
Dos Header 구조체
- PE 구조의 앞부부인 헤더 중에서도 가장 앞부분에 위치해 PE 파일의 시작 부분
- 구조체 필드값에서 중요한 부분 e_magic 필드와 e_lfanew 필드값
- e_magic : IMAGE_DOS_HEADER 구조체 내에서도 첫번째에 위치해 있다.
- e_lfanew : LONG형 변수로 4바이트의 크기를 갖는다(실행파일의 내용이 시작하는 부분인 IMAGE_NT_HEADER 구조체의 시작 오프셋 값을 가짐)
DOS Stub 프로그램
- 구조체가 아닌 하나의 작은 프로그램
- 32비트 윈도우 플랫폼에서 실행되도록 만들어진 pe파일이 16qlxm DOS 환경에서 실행되려는 것을 방지하는 프로그램
IMAGE_NT_HEADER 구조체
- 4바이트의 signature, IMAGE_FILE_HEADER, IMAGE_OPTIONAL_HEADER32로 구성되어 있다.
반응형
'IT Security' 카테고리의 다른 글
오픈소스를 이용한 보안솔루션 구축(UTM - pfSense) (0) | 2018.09.12 |
---|---|
오픈소스를 이용한 보안솔루션 구축(구성도, 오픈소스) (0) | 2018.09.01 |
매그니베르 랜섬웨어 & 안랩 무료 복구툴 (0) | 2018.04.09 |
정보보안) Dos와 DDos공격(1) (0) | 2018.03.24 |
포트 스캐닝(port scanning) - TCP 스캔 (0) | 2018.03.22 |