- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PE文件格式实验
pe文件格式分析实验
使用lordpe/peview和WinHex工具
选择一个exe或者dll文件
第一阶段:(本实验)
1.dos头部查看、对应dos头结构进行数据逐项分析2.pe头部查看、对应pe头结构进行数据逐项分析
3.Exe和DLL文件采用PE格式。他们之间有什么区别?
4.section表结构的查看(是否可以增加一个新的section表?对齐边界是多少?)5.pe文件section查看、对应section块表结构进行数据分析6.va、rva、ra计算
7.问题:您正在查看的PE文件的dos和PE头之间的差距有多大?8.问题:您正在查看的PE文件中,哪个部分的间距最大/最小?
9.问题:如果手工增加一个section,要修改哪些字段,请手工试验。(提高:你的新块表
添加内容是否会改变原始文档的对齐位置?)10.问题(改进):如何设置节的属性字节?请在前面问题的基础上进行实验。
本次实验要求对照以上要求,自行选择文件进行分析,撰写报告。
阶段二:(后期工作)1查看和修改资源
2.编写pe文件分析程序3.编写pe病毒程序
附录1Pe格式详细说明(一)
前几天发了一个pe信息查看器的小工具,本来想用那个获取邀请码的,可是觉得几率不是太大,于是再献上一篇教程,既是为了自己能获得邀请码,也是帮助那些想学习pe格式的人,让知识来源于网络再回归网络。
我已经N年没写文章了。我不知道这个句子写得是否流畅。我最近在阅读软件加密技术的内幕。我刚刚读完体育结构的部分,所以我想写一篇教程作为阅读笔记,它不仅可以增强记忆力,还可以帮助他人。为什么不呢?
好了,废话少说好戏正式上场,pe是英文portableexecutable(可移植的执行体)的缩写,从缩写可以看出它是跨平台的,即使在非intel的cpu上也能正常运行的。它是win32环境自身所带的执行体文件格式。其实不光是exe文件是pe格式,其它的一些重要文件,例如动态链接库文件(dll),驱动文件(sys)等也是pe格式的,所以学好pe格式是非常重要的,以下我把这类文件统称为pe文件。学习pe文件结构不仅可以使我们知道可执行文件是怎样运行的,也可以使我们了解一下windows操作系统的一些工作机制,精通pe是成为计算机高手的必经之路。
事实上,坦率地说,PE文件格式是一种文件组织方式,它对一些重要信息的存储做出了一些规定。例如,如果文件要运行,我们必须首先知道条目地址,但是从哪里获得条目地址呢?我们必须保存入口地址信息
的有关数据放在固定的位置,这样不管是哪个文件我们就能从那个固定位置取得入口地址,而这固定位置就是pe标准所规定的。现在我们就来正式学习这套标准,我觉得从整体到部分是个很好的学习方法,先从整体把握全局,然后再重点各个击破,逐渐深入,下面我就以这个思路来介绍pe文件格式,方便大家快速掌握。它总体上由五大部分组成:1.dosmzheader(dos头)2.dosstub3.peheader(pe头)4.sectiontable(节表)5.section(各个节)
所有PE文件都必须以dosmwasher开头,这实际上是一种图像uDos uuHeader类型的结构。我们可以在WinNT H头文件中定义这个结构。我们必须了解这个结构中的两个重要成员。第一个是e_Magic,它是一个DWORD类型的变量。这个变量只有一个用途。当我们想要判断一个文件是否是PE文件时,我们首先需要将这个变量的值与image_uDos_uu进行比较。判断的第一步是通过比较信号来完成的。当然,我们以后还要评判一面旗帜。如果不是,则表示当前文件不是PE文件。第二个成员非常重要。可以说,只要它出错,我认为文件就会被破坏。它是e_Lfanew,一个long类型的变量,它将PE头的偏移量存储在此文件中。它是定位PE头的关键数据。在了解了这两个成员的含义后,DOS头学习基本完成。下一个dostub实际上是一个exe。当当前系统不支持PE文件结构时,会输出错误提示“此程序需要windows”。这不是很重要。接下来是主播放PE头,这是一个图像头类型的结构。以下是H中WinNT定义的结构:typestruct_uuimage_uunt_uuheaders{dwordsignature;
image_file_headerfileheader;
图像uo可选uo头32可选头;}图像头32,*pimage头32;
它有三个数据成员,signature是一个标志变量,这个就是当我们判断一个文件是否是pe文件时第二步需要判断的,
原创力文档


文档评论(0)