pe文件格式入门 word版 (完美排版).doc

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
pe文件格式入门 word版 (完美排版)

PE文件格式入门 By: QQ1462433585 说明: 几年前学习PE文件格式的时候,看了几个比较流行的PE文件教程,发现这些教程要么不够详细,要么太深奥,要么干脆就是纯英文的,所以就想把这几个教程好好整理综合一下,就得到了这篇文章。 其中大部分内容都是从已有教程中直接复制过来的,并不是本人原创(只可惜当时没有注明出处)。我所做的工作就是综合了这些中文教程,把英文教程里的英文说明翻译了一下,调整好了格式,排好了版,有几张图片里面自己加上了说明,还又画了几张图,比如输入表结构图、输出表机构图、重定位表结构图等。 因为当时也是初学PE格式,文中肯定也会有不少的错误,大家看的时候不要盲信,对有疑问的地方多查查资料。 本人QQ:1462433585 另外附上那时候看过的一些相关教程和文章的名字,文中的内容应该是从这些教程中复制过来的。 《深度探索Win32可执行文件格式》 姜庆东译 《加密解密 技术内幕》PE格式学习总结 《【NB5免杀】PE结构图解》 《PE头结构 》 《PE文件区段表详解—精通PE文件格式》 《体验修改PE文件的乐趣》 《学习笔记之PE文件结构导入表》 《手工构造PE文件》 - 看雪软件安全论坛 《手工构造典型PE文件》 《也谈PE重定位表》 - 看雪软件安全论坛 《再写手工打造可执行程序》 - 看雪软件安全论坛 《关于重定位表》 - CSDN博客频道 Code Space 《PE文件重定位表详解》 - CSDN博客频道matianlong_080的专栏 《PE 重定位表学习》 - justnow0506的日志 - 网易博客 《PE重定位表学习手记》 目录 第一节 PE文件格式一览 1 第二节 深入了解PE文件与文件头 4 第三节 PE header(PE头) 7 第四节 File Header (文件头) 9 4.1 文件头 9 4.2 PE头移动 11 4.3修改PE头 11 第五节 Optional Header(可选头) 12 5.1 可选头 12 5.2 数据目录 14 5.3 相对虚拟地址RVA 15 5.3 对齐值 17 第六节 Section Table(区段表) 18 第七节 Import Table(输入表、引入表或者导入表) 21 7.1 输入表结构 21 7.2 输入表绑定 29 第八节 Export Table(输出表或叫引出表、导出表) 32 第九节 重定位表 38 第十节 关于区段 42 第十一节 几个小知识 44 一、PE相关名词解释如下 44 二、文件中大量的空白 44 三、高存高低存低原则 45 四、DOS MZ Header 中的 MZ 46 第一节 PE文件格式一览 其实PE文件就是指Windows里的DLL与EXE文件PE的意思就是 Portable Executable(可移植的执行体)。它是 Win32环境自身所带的执行体文件格式。它的一些特性继承自 Unix的 Coff (common object file format)文件格式。portable executable(可移植的执行体)意味着此文件格式是跨win32平台的即使Windows运行在非Intel的CPU上,任何win32平台的PE装载器都能识别和使用该文件格式。当然,移植到不同的CPU上PE执行体必然得有一些改变。所有win32执行体 (除了VxD和16位的Dll)都使用PE文件格式,包括NT的内核模式驱动程序(kernel mode drivers)。因而研究PE文件格式给了我们洞悉Windows结构的良机。 PE文件总的来说是由dos文件头、dos加载模块、PE头、与5部分构成。其实,如果在纯Windows环境下运行,dos文件头、dos加载模块根本是用不上的,加上两个dos相关的结构完全是为了兼容性问题。 为了方便观察与理解,我们可以通过观察大体了解PE文件的结构。 图二 如图可知,整个程序就是以dos文件头“MZ”开始的,接下来就是dos加载模块“This program cannot be run in dos mode”,几乎每个Windows程序的前面都是这样一些信息! 下面有一个以字母“PE”为开头,这就是大名鼎鼎的PE头了,PE头的标准大小为个字节,由图可见,里面有一个画了横线标记的问号与左面的十六进制信息“E0”相对应,这便是PE头体积的描述标记,十六进制的“E0”等于十进制的“224”。 再往下就是以“.text”、“ .data”与“.rsrc”组成的了。也称表,它的作用就相当于一本书中的目录,你想看哪一章哪一节,只要按着目录标注的页数去找就可以,PE文件的也是起同样的作用,但是除此之外还包含有各个的读写权限信息。而图中的“.text”、“ .data”与“.rsrc”

文档评论(0)

精华文库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7111022151000002

1亿VIP精品文档

相关文档