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

《第5章Windows病毒分析.ppt

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机病毒与反病毒技术 主要内容 Wind32 PE病毒的基本原理 脚本病毒的基本原理及其防治 宏病毒的基本原理及其防治 5.1.1 获取API函数地址 为什么要获取API函数地址 Win32程序一般运行在Ring 3级,处于保护模式 Win32下的系统功能调用,不是通过中断实现,而是通过调用动态连接库中的API函数实现 Win32 PE病毒和普通Win32 PE程序一样需要调用API函数实现某些功能,但是对于Win32 PE病毒来说,它只有代码节,并不存在引入函数节 病毒就无法象普通PE程序那样直接调用相关API函数,而应该先找出这些API函数在相应DLL中的地址 5.1.1 获取API函数地址 如何获取API函数地址 要获取API函数地址,首先需要获取KERNEL32的基地址 获取KERNEL32基地址的方法 ①利用程序的返回地址,在其附近有哪些信誉好的足球投注网站Kernel32模块基地址 5.1.1 获取API函数地址 5.1.1 获取API函数地址 ②对相应操作系统分别给出固定的Kernel32模块的基地址 对于同一版本的Windows操作系统,Kernel32模块的地址是固定的,甚至一些API函数的大概位置都是固定的 获取API函数地址 在得到了Kernel32的模块地址以后,就可以在该模块中有哪些信誉好的足球投注网站所需要的API地址 对于给定的API,有哪些信誉好的足球投注网站其地址可以直接通过Kernel32.dll的引出表信息有哪些信誉好的足球投注网站,同样我们也可以先有哪些信誉好的足球投注网站出GetProcAddress和LoadLibrary两个API函数的地址,然后利用这两个API函数得到所需要的API函数地址 5.1.2 有哪些信誉好的足球投注网站感染目标文件 有哪些信誉好的足球投注网站文件是病毒寻找目标文件的非常重要的功能 在Win32汇编中,通常采用如下几个API函数进行文件有哪些信誉好的足球投注网站 FindFirstFile 根据文件名查找文件 FindNextFile 根据调用FindFirstFile函数时指定的一个文件名查找下一个文件 FindClose 用来关闭由FindFirstFile函数创建的一个有哪些信誉好的足球投注网站句柄 5.1.2 有哪些信誉好的足球投注网站感染目标文件 文件有哪些信誉好的足球投注网站算法 文件有哪些信誉好的足球投注网站一般采用递归算法进行有哪些信誉好的足球投注网站,也可以采用非递归有哪些信誉好的足球投注网站方法 5.1.3 内存映射文件 内存映射文件提供了一组独立的函数,是应用程序能够通过内存指针像访问内存一样对磁盘上的文件进行访问 这组内存映射文件函数将磁盘上的文件的全部或者部分映射到进程虚拟地址空间的某个位置,以后对文件内容的访问就如同在该地址区域内直接对内存访问一样简单 对文件中数据的操作便是直接对内存进行操作,大大地提高了访问的速度,这对于计算机病毒来说,对减少资源占用是非常重要的 5.1.3 内存映射文件 使用内存映射文件读写文件 在计算机病毒中,通常采用如下几个步骤: ①调用CreateFile函数打开想要映射的HOST程序,返回文件句柄hFile ②调用CreateFileMapping函数生成一个建立基于HOST文件句柄hFile的内存映射对象,返回内存映射对象句柄hMap ③调用MapViewOfFile函数将整个文件(一般还要加上病毒体的大小)映射到内存中。得到指向映射到内存的第一个字节的指针(pMem) ④用刚才得到的指针pMem对整个HOST文件进行操作,对HOST程序进行病毒感染 ⑤调用UnMapViewFile函数解除文件映射,传入参数是pMem ⑥调用CloseHandle来关闭内存映射文件,传入参数是hMap ⑦调用CloseHandle来关闭HOST文件,传入参数是hFile 5.1.4 病毒感染PE文件的基本方法 感染文件的基本步骤 (1)判断目标文件开始的两个字节是否为“MZ”; (2)判断PE文件标记“PE”; (3)判断感染标记,如果已被感染过则跳出继续执行HOST程序,否则继续; (4)获得Directory(数据目录)的个数,每个数据目录信息占8个字节; (5)得到节表起始位置:Directory的偏移地址+数据目录占用的字节数=节表起始位置; (6)得到目前最后节表的末尾偏移(紧接其后用于写入一个新的病毒节): 节表起始位置+节的个数×(每个节表占用的字节数28H)=目前最后节表的末尾偏移 5.1.4 病毒感染PE文件的基本方法 (7)开始写入节表 ①写入节名(8字节); ②写入节的实际字节数(4字节); ③写入新节在内存中的开始偏移地址(4字节),同时可以计算出病毒入口位置: 上节在内存中的开始偏移地址+(上节大小/节对齐+1)×节对齐=本节在内存中的开始偏移地址; ④写入本节(即病毒节)在文件中对齐后的大小; ⑤写入本节在文件中的开始位置: 上节在文件中的开始位置+上节对齐后的大小=本节(即病毒)在文件中的开始位置; ⑥修改映像文件头中的节表数目 5.1.4 病毒感染PE文件的

文档评论(0)

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

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

1亿VIP精品文档

相关文档