반응형
PE파일 구조를 자세히 들여다보자.
Dos Header
도스헤더는 PE file format을 만들 당시 Dos파일에 대한 호환성을 위해 만들어졌다. PE파일의 첫 부분에는 DOS EXE Header를 확장시킨 IMAGE_DOS_HEADER 구조체가 존재한다. 이 구조체에서 중요한 멤버는 e_magic과 e_lfanew가 있다.
e_magic 에는 dos signature("MZ")가 존재하고, e_lfanew 에는 NT HEADER 구조체가 존재한다.
notepad를 열어 Dos header 부분을 보면 4D5A(MZ), e_lfanew값은 000000E0을 알 수 있다.
Dos Stub
Dos stub는 옵션으로 존재하고 크기도 일정하지 않다. 코드와 데이터의 혼합으로 이루어져 있으며, Windows에서는 dos stub부분이 실행되지 않는다.
만약, Dos 환경에서 notepad가 실행되면 MS-DOS 호환모드를 가지고 있어 This program cannot be run in DOS mode를 출력하고 종료해버린다.
반응형
'Study > Reversing' 카테고리의 다른 글
"pwnable.kr" fd 문제풀이 (0) | 2014.11.04 |
---|---|
PE헤더-NT Header (0) | 2014.08.03 |
PE파일 구조 (0) | 2014.07.31 |
리버싱 분석방법-정적분석, 동적분석 (0) | 2014.07.07 |