5- windo六ws病毒分析 - 企业信息化.ppt

  1. 1、本文档共109页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机病毒 Computer Virus 傅建明 Fujms@; fujms@ 第五章 Windows病毒分析 5.1 Win32 PE病毒 5.2 宏病毒 5.3 脚本病毒 5.4 网页病毒 5.5 网络蠕虫 5.1 Win32 PE病毒 SMC, Self Modifying Code Win32 PE病毒原理 Win32 PE病毒样例 SMC Win32应用程序是运行在保护模式下的,每个Win32应用程序都有相互独立的4GB地址空间,没有段的区分,但不能在程序运行的过程中随便更改代码段。一般有data段和text段,编译器可以为不同的段指定不同属性。 如何实现SMC? 其实关键就在于链接时的参数,只要指定了代码段的属性是可写的(默认的参数是不可写的)。在编译、链接带有SMC的Win32ASM时应该这样做:? ml /c /coff %1.asm link /subsystem:windows /section:.text,RWE %1.obj SMC样例 ShowMessage proto ReplaceMent proto ? .data szMsg1 db 这是未执行SMC之前的代码!, 0 szMsg2 db SMC已经执行!, 0 szCaption db SMC demo by LC, 2002, 0 Replace_Len dd 0 SMC样例 .code main: ;第一次执行子程序ShowMessage,此时还没执行SMC操作 invoke ShowMessage? lea eax, ReplaceMentEnd ;标号ReplaceMent的结束 lea edx, ReplaceMentStart ;标号ReplaceMent的开始 sub eax, edx ;标号ReplaceMent的长度 mov Replace_Len, eax ;把长度储存起来 ? ;关键代码! lea esi, ReplaceMentStart ;标号ReplaceMent的开始 lea edi, ShowMessageStart ;原程序ShowMessage的标号的开始 mov ecx, Replace_Len ;标号ReplaceMent的长度 rep movsb ;这里是最关键的语句!!!执行SMC操作! ;第二次执行子程序ShowMessage,其内容已经不是第一次运行时的内容 invoke ShowMessage invoke ExitProcess, 0 Win32 PE病毒原理 一、病毒的重定位 病毒不可避免也要用到变量(常量),当病毒感染HOST程序后,由于其依附到HOST程序中的位置各有不同,病毒随着HOST载入内存后,病毒中的各个变量(常量)在内存中的位置自然也会随着发生变化。 Win32 PE病毒原理 Win32 PE病毒原理 二、获取API函数地址 Win32 PE病毒和普通Win32 PE程序一样需要调用API函数,但是普通的Win32 PE程序里面有一个引入函数表,该函数表对应了代码段中所用到的api函数在动态连接库中的真实地址。这样,调用api函数时就可以通过该引入函数表找到相应api函数的真正执行地址。 但是,对于Win32 PE病毒来说,他只有一个代码段,他并不存在引入函数段。要获得API函数地址,我们首先需要获得Kernel32的基地址。 Win32 PE病毒原理 二、获取API函数地址 当系统打开一个可执行文件的时候,它会调用Kernel32.dll中的CreateProcess函数;CreateProcess函数在完成装载应用程序后,会先将一个返回地址压入到堆栈顶端,然后转向执行刚才装载的应用程序。当该应用程序结束后,会将堆栈顶端数据弹出放到IP中,继续执行。刚才堆栈顶端保存的数据是什么呢?这个数据其实就是在Kernal32.dll中的返回地址。 Win32 PE病毒原理 三、关于文件搜索 搜索文件是病毒寻找目标文件的非常重要的功能。在Win32汇编中,通常采用两个API函数进行文件搜索。 a)FindFirstFile b) FindNextFile C) FindClose Win32 PE病毒原理 Win32 PE病毒原理 Win32 PE病毒原理 五、病毒如何感染其他文件 PE病毒常见的感染其他文件的方法是在

文档评论(0)

152****6235 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档