病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf

病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf

ID:52454201

大小:647.07 KB

页数:4页

时间:2020-03-27

病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf_第1页
病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf_第2页
病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf_第3页
病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf_第4页
资源描述:

《病毒木马查杀第007篇熊猫烧香之逆向分析(下).pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一、前言这次我们会接着上一篇的内容继续对病毒进行分析。分析中会遇到一些不一样的情况,毕竟之前的代码我们只要按照流程顺序一步一步往下走,就能够弄清楚病毒的行为,但是在接下来的代码中,如果依旧如此,在某些分支中的重要代码就执行不到了,所以我们需要采取一些策略,走完每个分支,彻底分析出病毒的行为。二、病毒分析现在程序执行到了loc_408171位置处:图1loc_408171起始处的代码程序首先进行比较操作,由于二者都为0,所以在比较过后ZF=1,那么接下来的跳转并不执行。之后的CALL获取到了病毒程序所在的路径(包含文件名),并将完整路径名的首地址保存在eax中,注意[ebp+var_3D8]中

2、所保存的是一个地址数值,该地址指向文件路径字符串。而接下来赋给edx的地址,则是病毒程序完整地址向后4个字节的位置,正好跳过了两个大写字母和两个符号。接下来进入sub_40532C进行查看,可以发现:图2查看sub_40532C内部代码这里的CharUpperBuff函数的作用是把缓冲区中指定数目的字符转为大写。于是可以将sub_40532C重命名为:ToUpper。接下来有:图3分析sub_4054BC函数这里出现了sub_4054BC函数,跟进查看可以发现:图4查看sub_4054BC内部代码这里的GetSystemDirectory函数的作用在于获取系统路径,于是可以将sub_4054

3、BC重命名为:GetSystemDir。可见以上这几个函数分析得还是比较顺利的,因为病毒直接调用了API函数,让我们对于程序的功能一目了然。接下来有:图5分析sub_403F8C函数程序首先将刚才获取的系统路径字符串的首地址入栈,然后分别压入“drivers”与“spoclsv.exe”这两个字符串,之后利用OD对sub_403F8C进行分析,执行完后可以发现:图6跟踪sub_403F8C执行完后的变化由此可见,sub_403F8C的作用是将两个字符串与另一个字符串连接起来,从而组成一个长路径,所以可以将其重命名为:TwoStringsCat。接下来是:图7分析sub_4060D4函数结合

4、OD动态分析可知,这段程序首先将之前连接好的路径字符串转换为大写字母,然后将该字符串与之前所转换的病毒程序路径的大写字符串作对比操作,这里执行时,二者是不同的,所以接下来的跳转不成立(如果想要理解这里为什么要利用比对的操作,可以结合之前文章中对于病毒的行为分析,病毒会将自身改名为“spoclsv.exe”,并复制到“drivers”目录中,这里的对比就是要确认病毒到底有没有被复制到该目录下,如果没有,即对比结果不为零,那么就执行接下来的病毒复制操作)。dword_408658中保存的是字符串“spoclsv.exe”,然后可以进入sub_4060D4中进行分析。sub_4060D4这个函数也

5、是比较长,内部有众多的CALL,一个一个CALL进行查看,可以发现它调用了非常多的API函数,依据这些API函数的功能可以知道,sub_4060D4的作用在于查找当前内存中的指定进程,若存在,则将其终止。由于较长,这里就不进行截图分析了。于是可以将sub_4060D4重命名为:SearchAndTerminateProcess。接下来有:图8这段代码已经有了足够的注释,就不再赘述。接下来还有:图9由最后一句的CopyFile函数可以知道,这里主要是实现文件的拷贝操作,也就是将本病毒文件改名为“spoclsv.exe”后,复制到“drivers”目录中。接下来有:图10这段代码调用了WinEx

6、ec函数,查看它上面的eax中所保存的字符信息可以发现,当病毒本体将自身复制到“drivers”中并改名后,这里就是对改了名字的病毒程序执行运行的操作,然后主体程序就退出了。至此,如果想继续用OD进行动态分析,要么载入“spoclsv.exe”,要么对之前的一处条件跳转进行修改,令程序以为自己就是“spoclsv.exe”。该位置就是图7中的0x004081E8,我们先在该位置下一个断点,然后用OD重新载入本程序,令其停在断点处。正常来说,这里的跳转是不成立的,为了使其成立,当然可以将jz改为jnz,但是这改变了病毒程序。最好的办法是改变ZF标志位,将原来的0改为1就可以了。但是,经过了之前

7、的行为分析可以知道,真正实现病毒功能的,可以说就是“spoclsv.exe”这个程序,虽说这个程序和“熊猫烧香.exe”是完全一样的,可是毕竟其内部的执行流程是不同的。为了得到病毒完整的资料,这里我利用OD载入“spoclsv.exe”进行动态分析。那么0x004081E8处的跳转得以执行,来到以下代码:图11执行到loc_4082F0这段代码出现了sub_40416C这个函数,它也是比较抽象,不太容易分析,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。