PE3 PE parsing - IMAGE_NT_HEADER IMAGE_NT_HEADER 는 ImageBase로 부터 IMAGE_DOS_HEADER->e_lfanew 만큼 떨어져있습니다. int main(void) { HMODULE module_base = GetModuleHandle(NULL); LPVOID base_addr = (LPVOID)module_base; PIMAGE_DOS_HEADER dos_header = (PIMAGE_DOS_HEADER)base_addr; PIMAGE_NT_HEADERS nt_header = (PIMAGE_NT_HEADERS)((UINT_PTR)base_addr + dos_header->e_lfanew); std::cout 2023. 4. 8. PE parsing - IMAGE_DOS_HEADER PE 헤더의 IMAGE_DOS_HEADER 구조체를 파싱합니다 int main(void) { HMODULE module_base = GetModuleHandle(NULL); LPVOID base_addr = (LPVOID)module_base; PIMAGE_DOS_HEADER dos_header = (PIMAGE_DOS_HEADER)base_addr; std::cout 2023. 4. 8. PE File Format PE 파일은 windows 운영체제에서 사용되는 실행파일 형식 PE 파일은 32비트 형태의 실행 파일을 의미함, PE32라고도함 64비트 형태의 실행파일은 PE+, PE32+ 라고 사용함 종류 주요 확장자 실행 계열 EXE, SCR 라이브러리 계열 DLL, OCX, CPL, DRV 드라이버 계열 SYS, VXD 오브젝트 파일 계열 OBJ 2022. 4. 25. 이전 1 다음 반응형