感染PE文件的几种讨论.docx

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

感染PE文件的几种讨论 DBinary PE文件在这里你可以简单而不怎么准确地理解为windows上的DLL,EXE,COM…后缀的那些可执行文件,即使没有黑框眼镜的加成,如何感染PE文件,对于混迹在Bin或者是逆向分析界的猴子们也是身经百战见得多了。虽然本人并不是二进制安全方面的老司机,不过没见过猪跑,总也吃过猪肉,所以下面的几个章节中,我将讨论下感染PE文件的几种姿势,当然,本文行文的最终目的并不是教会你如何制作病毒程序来感染其他的文件,而是作为一个科普向的讨论,告诉相关的一些套路。如果你对这方面非常感兴趣,你可能需要更深入的了解PE格式,《Windows PE 权威指南》,《加密与解密》都是干货满满的好书。当然我们也可以不做的那么复杂,实际上感染一个PE文件有非常多简单的手法,那么其它话不多说,就让我们实际开始吧。 一.囫囵吞枣 在06年那个杀毒软件单纯到还能被任务管理器干掉的年代,熊猫烧香也算是天朝知名了,但在这个章节我们并不讨论熊猫烧香的危害性与功能性,而是以熊猫烧香做例子来说一个简单而且通用性非常高的一种PE文件感染手法。 这种手法非常非常的简单,打个比方就是熊猫烧香病毒想要感染一个文件,首先是把这个文件整个“吃下去”,然后替换这个文件,这样在你下次想要执行这个文件的时候,实际上执行的是个熊猫烧香的病毒,然后熊猫烧香再把源程序给吐出来再执行源程序。 用图来表示大概是这样的 1.源程序 2.熊猫烧香 3.感染后的源文件 实际上最终感染后的文件就是源程序和熊猫烧香简单的结合体,“吃下”源程序,可以是直接把这个源程序附加到熊猫烧香的文件尾部或者是作为资源加到熊猫烧香中。当然这种不加修饰不加篇幅的暴力感染,因为PE头资源节指向的仍然是熊猫烧香病毒的资源节,最终感染后的文件图标仍然是熊猫烧香的,所以也就是为什么被感染文件图标会变成一只熊猫的原因之一。 那么最终感染方式的优劣如何? 优点:具有非常高的通用性,不管源程序怎么变花样都能感染,而且释放出来后不会改变源程序本身,避免了很多直接修改容易导致的问题,而且实现非常简单。即使是对PE格式没任何研究的新手也能够实现 缺点:首先感染后图标就告诉别人这个文件被感染啦,有本事你再拷贝到另一台电脑上运行,还有假如这个文件是带参数执行的,没处理好也会挂掉,最后假如你眼尖的话,可以看到运行这个程序后那个目录下又出现了一个奇怪的文件。老手马上会意识到自己电脑中招了。 因此,该方案的评分如下: 兼容性:★★★★ 隐蔽性:★ 难度:★ 二.见缝插针 不管是以前还是现在,如何在PE文件中插入自己写的code一直是老司机津津乐道乐于讨论的问题,这个技术在很久以前就已经存在了,但是即使到了今天,该手法仍然被用在了各种方面,而且随着新技术的发展,也不断的有一些新的问题,可以说,这个方法是一个古老而不过时仍然在不断被讨论的手法。 我们这里只说说这种方法一些最基本的原理 首先一个PE文件它实际上被分为了非常多的节(sections),为了更方便说明,我们使用LordPe来做一个演示,在这里,我们使用LordPe来随便打开一个EXE文件,然后点击sections 可以看到,它给我们列出了这个PE文件所包含的所有的节,其中,.text节一般包含了这个程序的代码,.rdata .rsrc可能是一些导入导出、资源这类的数据,.data可能是全局变量,常量之类的玩意。 那个VSize表示的就是这个资源节被映射到内存时的大小,RSize则是文件中的数据大小 我们以.text节为例,那么它在文件中类似于这个样子 那么我们需要做的,就是把我们想加的代码添加到那个多出来的空白数据中,然后修改Entry Point(程序入口地址)也就是OEP到我们的代码中,当然,最后我们插入的代码一般也会跳转回原始OEP,那么每次执行这个程序时,都会先把我们的代码跑一遍然后再跳转回原始的程序运行。 现在原理说完了,这个方案的可行性如何呢? 优点:首先这个方案的优点是非常明显的,它能够神不知鬼不觉的把代码插入到原始程序中,然后悄无声息地运行,除非你插入的代码实在在屏幕上表现的太明目张胆,或者这个程序本身带有自检程序,否者即使是资深老司机也不能通过直接运行程序或者简单看看Pe结构看出什么猫腻(在Header中有个CheckCode这个即使是错的也不影响运行,何况没谁闲的蛋疼验证checkcode,更何况感染时这个也能改),再者它不会让被感染文件变成熊猫,即使文件被感染了,即使是杀毒软件很难判断这个是不是被感染的PE文件(当然现在情况有所改善,一些杀软会通过编译器特征查看OEP所指向代码是否被修改,因为一些编译器原始OEP指向代码是一些不变的初始化代码,当然,误报率也上升了) 缺点:如果要说缺

您可能关注的文档

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档