pe结构:MS-dos头 标准pe头 扩展pe头 数据目录 节表
4D5A 文件标志
标准PE头和扩展PE头
常用区段:
IMAGE_SIZEOF_FILE_HEADER等 //pe中一组宏定义常见属性
VA Virtual Address //虚拟内存地址 00000000h-0fffffffh
进程的基地址 + 相对虚拟内存地址
RVA //Reversc Virtual Address 相对虚拟地址(模块的基地址的偏移量
FOA File Offset Address 文件偏移地址 某个位置距离文件头的偏移量
注意处理文件的位数是32位还是64位
遍历动态链接库和API
_IMAGE_EXPORT_DIRECTORY
TLS表:线程局部存储,
_IMAGE_DELAYLOAD_DESCRIPTOR
//LoadPE查看
//解析其他表
PE文件被称为可移植的执行体是Portable Execute的全称,常见的EXE、DLL、OCX、SYS、COM都是PE文件,PE文件是微软Windows操作系统上的程序文件(可能是间接被执行,如DLL)一个操作系统的可执行文件格式在很多方面是这个系统的一面镜子。虽然学习一个可执行文件格式通常不是一个程序员的首要任务,但是你可以从这其中学到大量的知识。在这篇文章中,我会给出 MicroSoft 的所有基于 win32系统(如winnt,win9x)的可移植可执行(PE)文件格式的详细介绍。在可预知的未来,包括 Windows2000 , PE 文件格式在 MicroSoft 的操作系统中扮演一个重要的角色。如果你在使用 Win32 或 Winnt ,那么你已经在使用 PE 文件了。甚至你只是在 Windows3.1 下使用 Visual C++ 编程,你使用的仍然是 PE 文件(Visual C++ 的 32 位 MS-DOS 扩展组件用这个格式)。简而言之,PE 格式已经普遍应用,并且在不短的将来仍是不可避免的。现在是时候找出这种新的可执行文件格式为操作系统带来的东西了。
全面介绍:http://baike.baidu.com/view/1087038.htm
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)