基于PEview分析PE文件(4-3)

4 PE的NT头

点击PEview左侧树形控件中的“IMAGE_NT_HEADERS”左侧的“+”,展开NT头结构,如图7所示。

 

图7 NT头结构

从图7中可以看到,NT头包括Signatrue、IMAGE_FILE_HEADER和IMAGE_OPTIONAL_HEADER三部分。

4.1 Signatrue

在图7中,选中“Signatrue”,在右侧显示了该部分的内容,如图8所示。

 

图8 Signatrue的值

从图8可以看出,Signatrue共4个字节,其值为0x00004550,即为字符串“PE”,因此Signatrue也叫做PE文件的文件签名,标志该文件的类型为PE。

4.2 IMAGE_FILE_HEADER

单击图7中的“IMAGE_FILE_HEADER”,在右侧可以看到该部分的内容,如图9所示。

 

图9 IMAGE_FILE_HEADER内容

从图9中可以看出,IMAGE_FILE_HEADER部分共20字节。其中0x000000EC-0x000000ED,这两个字节表示机器类型,用于标识CPU的类型,0x014C表示CPU为Intel 386或后继处理器及其兼容处理器;0x000000EE-0x000000EF表示节的数目,0x0009表示本应用程序有9个节(section),从图3左侧中可以看出,本应用程序确实有9个节(section);0x000000F4-0x000000FB这8个字节已经不再使用,因此将这8个字节都设置为0;0x000000FC-0x000000FD,这两个字节是IMAGE_OPTIONAL_HEADER,即NT头的第三部分的大小,其值为0x00E0;0x000000FE-0x000000FF,这两个字节指定了文件特征值,其值为0x0102,其16位的含义均不同。

4.3 IMAGE_OPTIONAL_HEADER

单击图7中的“IMAGE_OPTIONAL_HEADER”,在右侧可以看到该部分的内容,如图10所示。

 

图10 IMAGE_OPTIONAL_HEADER内容

从图10中可以看出,IMAGE_OPTIONAL_HEADER头由两部分组成,分别是0x0000012E-0x0000015F的参数部分和0x00000160-0x000001DF的数据目录部分。其中参数部分包含了产生该PE文件的连接器版本号、代码基地址、数据基地址、镜像基地址等信息;数据目录部分包含了导出表、导入目录表、资源表等地址和大小。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值