pe解析

来源:互联网 发布:天津大学软件学院地址 编辑:程序博客网 时间:2024/05/16 04:55

doc头

word e_magic “MZ标记”用于判断是否为可执行文件
Dword e_lfanew pe头相对于文件的偏移,用于定位pe文件

标准pe头

word Machine 程序运行的cpu型号:0x0任何处理器/0x14c 386及后续处理器
word NumberOfSections 文件中存在的节的总数,如果要新增节或者合并节,就要修改这个值
dword TImeDateStamp 时间戳:文件的创建时间(和操作系统的创建时间无关),编译器填写的
dword PointerToSybolTable
dword NumberOfSymbols
word SizeOfOptionalHeader 可选pe头的大小,32位pe文件默认E0h,64位pe文件默认为F0h 大小可以自定义
word Characteristics 每个位都有不同的含义,可执行文件值为10F 即0 1 2 3 8 位置1

可选pe头

word Magic 说明文件类型:10b 32位下的pe文件 20b 64位下的pe文件
byte MajorLinkerVersion
byte MinorLinkerVersion
dword SizeOfCode 所有代码节的和,必须是FileAlignment的整数倍 编译器填的 没用
dword SizeOfInitializedData 已初始化数据大小的和,必须是FileAlignment的整数倍 编译器填的 没用
dword SizeOfUninitializedData 未初始化数据大小的和,必须是FileAlignment的整数倍 编译器填的 没用
dword AddressOfEntryPoint 程序入口
dword BaseOfCode 代码开始的基址,编译器填的 没用
dword BaseOfData 数据开始的基址,编译器填的 没用
dword ImageBase 内存镜像基址
dword SectionAlignment 内存对齐
dword FIleAlignment 内存对齐
word MajorOperatingSystemVersion
word MinorOperatingSystemVersion
word MajorImageVersion
。。。
参考http://blog.csdn.net/evileagle/article/details/11903197

原创粉丝点击