网站大量收购独家精品文档,联系QQ:2885784924

第三讲 PE文件结构与计算机病毒.pdfVIP

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《计算机病毒分析与对抗》第三讲 PE文件结构与计算机病毒 武汉大学计算机学院 彭国军 guojpeng@whu.edu.cn 引言 什么是PE文件? 了解PE文件结构和了解PE病毒原理有什么 联系? 课前我们应该思考的问题 计算机病毒如何将自身代码写到PE可执行文 件中并使得感染文件依然能够执行其功能? PE程序如何从其他DLL引入API函数? DLL文件如何使其他可执行文件知道自己实现 的各API函数的代码位置? 传统PE病毒是否可以直接调用API函数?为 什么?如何获取API函数? 本讲的内容提纲 3.1 PE文件格式总体结构 3.2 MS-DOS MZ文件头+DOS Stub 3.3 PE文件头 3.4 节表 3.5 节 3.1PE文件格式总体结构 DOS MZ header DOS stub PE header Section table Section 1 Section 2 Section ... Section n hello-2.5.exe 3.2MS-DOS MZ文件头(0x40)+DOS Stub MZ文件头(0x40) DOS Stub 3.2.1MS-DOS MZ header MS-DOS头部占据了PE文件的头64个字节 (4*16=64) USHORT e_magic; // 魔数=MZ MZ文件格式创始人,微软资深工程师Mark Zbikowski的 缩写 LONG e_lfanew; //e_lfanew成员用于定位PE头。 该字段位于3CH处,该位置给出了PE文件头部的开始位置。 在本例中,PE文件头部开始位置为0B0H。 3.2.1MS-DOS MZ header typedef struct _IMAGE_DOS_HEADER { // DOS的.EXE头部 USHORT e_magic; // 魔数 USHORT e_cblp; // 文件最后页的字节数 USHORT e_cp; // 文件页数 USHORT e_crlc; // 重定义元素个数 USHORT e_cparhdr; // 头部尺寸,以段落为单位 USHORT e_minalloc; // 所需的最小附加段 USHORT e_maxalloc; // 所需的最大附加段 USHORT e_ss; // 初始的SS值(相对偏移量) USHORT e_sp; // 初始的SP值 USHORT e_csum; // 校验和 USHORT e_ip; // 初始的IP值 USHORT e_cs; // 初始的CS值(相对偏移量) USHORT e_lfarlc; // 重分配表文件地址 USHORT e_ovno; // 覆盖号 USHORT e_res[4]; // 保留字 USHORT e_oemid; // OEM标识符(相对e_oeminfo) USHORT e_oeminfo; // OEM信息 USHORT e_res2[10]; // 保留字 LONG e_lfanew; // 新exe头部的文件地址 } IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER; 3.3 PE header(P78) Pe header 由三部分组成 字串 “PE\0\0” (Signature) 映像文件头(FileHeader) 可选映像头(OptionalHeader) 3.3.1 字串 “PE\0\0” Signature 一d

您可能关注的文档

文档评论(0)

peace0308 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档