0
点赞
收藏
分享

微信扫一扫

逆向调试入门-PE结构详解02/07

前一节我们详解了DOS头部,dos头部只有一个字段指向PE头部结构

el_fanew字段找到PE头部


逆向调试入门-PE结构详解02/07_逆向调试入门


PE头部结构


逆向调试入门-PE结构详解02/07_PE结构头部_02


我们先来看下PE头部的三个结构体


typedef struct _IMAGE_NT_HEADERS {
DWORD Signature; //PE文件头标志 => 4字节
IMAGE_FILE_HEADER FileHeader; //标准PE头 => 20字节
IMAGE_OPTIONAL_HEADER32 OptionalHeader; //扩展PE头 => 32位下224字节(0xE0) 64位下240字节(0xF0)
} IMAGE_NT_HEADERS32, *PIMAGE_NT_HEADERS32;


前4个字节(04H)为PE标志位,一般为50450000。往后20字节(14H)为PE文件头


逆向调试入门-PE结构详解02/07_逆向调试入门_03


其中NumberOfSections为节数目(2字节长度)(0006h-0008h)

我们先来找个这个字段


逆向调试入门-PE结构详解02/07_逆向调试入门_04


OD上显示


逆向调试入门-PE结构详解02/07_PE结构头部_05


OD调试器会进行分析


逆向调试入门-PE结构详解02/07_PE结构头部_06


有个很重要的字段

AddressOfEntryPoint

指的是程序的真正入口。


我们可以通过目录来找到每个结构的RAV,并计算所需表的起始地址


逆向调试入门-PE结构详解02/07_PE结构头部_07


PE的头部字段是比较重要的。

举报

相关推荐

0 条评论