电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

PE文件格式分析及修改

PE文件格式分析及修改_第1页
1/18
PE文件格式分析及修改_第2页
2/18
PE文件格式分析及修改_第3页
3/18
下载后可任意编辑PE 文件格式分析及修改(图)PE 的意思是 Portable Executable(可移植的执行体)。它是 Win32 环境自身所带的执行文件格式。它的一些特性继承自 Unix 的 Coff(common object file format)文件格式。“Portable Executable”(可移植的执行体)意味着此文件格式是跨 Win32 平台的;即使 Windows 运行在非 Intel的 CPU 上,任何 win32 平台的 PE 装载器都能识别和使用该文件格式。 PE 文件在文件系统中,与存贮在磁盘上的其它文件一样,都是二进制数据,对于操作系统来讲,可以认为是特定信息的一个载体,假如要让计算机系统执行某程序,则程序文件的载体必须符合某种特定的格式。要分析特定信息载体的格式,要求分析人员有数据分析、编码分析的能力。在 Win32 系统中,PE 文件可以认为.exe、.dll、.sys 、.scr 类型的文件,这些文件在磁盘上存贮的格式都是有一定规律的。一、PE 格式基础下表列出了 PE 的总体结构DOS MZ headerDOS stubPE headerSection tableSection 1Section 2…Section n 一个完整的 PE 文件,前五项是必定要有的,假如缺少或者数据出错,系统会拒绝执行该文件如下图 图 1 文件头格式错误 下载后可任意编辑 图 2 格式数据错误 图 3 代码错误DOS MZ header 部分是 DOS 时代遗留的产物,是 PE 文件的一个遗传基因,一个 Win32 程序假如在 DOS下也是可以执行,只是提示:“This program cannot be run in DOS mode.”然后就结束执行,提示执行者,这个程序要在 Win32 系统下执行。DOS stub 部分是 DOS 插桩代码,是 DOS 下的 16 位程序代码,只是为了显示上面的提示数据。这段代码是编译器在程序编译过程中自动添加的。PE header 是真正的 Win32 程序的格式头部,其中包括了 PE 格式的各种信息,指导系统如何装载和执行此程序代码。Section table 部分是 PE 代码和数据的结构数据,指示装载系统代码段在哪里,数据段在哪里等。对于不同的 PE 文件,设计者可能要求该文件包括不同的数据的 Section。所以有一个 Section Table 作为索引。Section 多少可以根据实际情况而不同。但至少要有一个 Section。假如一个程序连代码都没有,那么他也不能称为可执行代码。在 Section Table 后,Section 数目的多少是不定的。二、程序的装入当我们在 explorer.exe(资源管理器)中双击某文件,执行一个可执行程序,系统...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

PE文件格式分析及修改

不二商店+ 关注
实名认证
内容提供者

我是你的不二选择

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部