个人分享木马病毒查杀总结Word文档格式.docx
- 文档编号:18126739
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:19
- 大小:35.63KB
个人分享木马病毒查杀总结Word文档格式.docx
《个人分享木马病毒查杀总结Word文档格式.docx》由会员分享,可在线阅读,更多相关《个人分享木马病毒查杀总结Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
通过观察这一系列的操作,就可以写一个程序。
只要把它创建的进程结束掉,把它写入注册表的内容删除掉,把新建的文件删除掉,就等于把这个病毒杀掉了。
这也是手动查杀病毒所惯用的方法。
当然,这整个过程不会像说起来那么容易。
2、逆向分析。
当恶意程序感染了可执行文件之后,所感染的内容是无法通过行为监控工具发现的。
而病毒对可执行文件的感染,有可能是通过PE文件结构中的节与节之间的缝隙来存放病毒代码,也可能是添加一个新节来存放病毒代码。
无论是哪种方式,都需要通过逆向的手段进行分析。
常用的逆向分析工具有OllyDbg、IDAPro以及WinDBG。
三、病毒查杀方法
病毒的查杀方法有很多种,在网络安全知识日益普及的今天,在各大杀软公司大力宣传的今天,想必大部分网络安全爱好者对于病毒查杀技术都有一定的了解。
当今常见的主流病毒查杀技术有特征码查杀、启发式查杀、虚拟机查杀和主动防御等。
1、特征码查杀。
特征码查杀是杀软厂商查杀病毒的一种较为原始的方法。
它是通过从病毒体内提取病毒特征码,从而识别病毒。
但是这种方法只能查杀已知病毒,对于未知病毒则无能为力。
2、启发式查杀。
静态地通过一系列“带权规则组合”对文件进行判定,如果计算出的值高于某个界限则被认为是病毒,否则不认为是病毒。
启发式查杀可以相对有效地识别出病毒,但是往往也会出现误报的情况。
3、虚拟机查杀。
在内存中虚拟一个运行环境用于病毒的运行,根据其行为或释放出的已知病毒特征码,来判断其是否为病毒程序。
这个技术用来应对加壳和加密的病毒比较有效,因为这两类病毒在执行时最终还是要自身脱壳和解密的,这样,杀软可以在其现出原形之后进行查杀。
4、主动防御。
基于程序行为自主分析判断的实时防护技术,不以病毒的特征码作为判断病毒的依据,而是从最原始的病毒定义出发,直接将程序的行为作为判断病毒的依据。
主动防御是用软件自动实现了反病毒工程师分析判断病毒的过程,解决了传统安全软件无法防御未知恶意软件的弊端,从技术上实现了对木马和病毒的主动防御。
四、环境的配置
我们所有的病毒分析工作都会在虚拟机中进行,因此安装虚拟机是一个必须的步骤。
虚拟机也是一个软件,用于模拟计算机的硬件系统,在虚拟机中可以安装操作系统,之后可以安装各种各样的应用程序,这与真实的计算机是没有区别的。
在虚拟机中的操作完全不会对我们真实的系统产生影响。
但是这里要特别说明的是,某些特别强的病毒能够绕出虚拟机,进而感染我们真实的系统。
这种情况可能是因为我们的虚拟机中存在漏洞,而病毒正好利用了这个漏洞。
因此一定要选择最新版本的虚拟机软件。
除了对病毒进行分析需要使用虚拟机外,在进行双机调试系统内核时(比如使用WinDBG),往往也是要借助于虚拟机的。
常用的虚拟机有VMware和Oracle公司的VMVirtualBox。
我个人最喜欢使用VMware,因为它的功能非常强大,而且基本上所有的教程都会以这款软件作为讲解对象。
但是Vmware在我的系统中总是会出现莫名的问题,所以在我的实验环境中,我选择使用开源且免费的VirtualBox。
我的VirtualBox采用的是版,虚拟机中安装的操作系统为WindowsXPProfessionalSP3,为其虚拟1个处理器,1GB内存、10GB硬盘空间与128M显存。
而我的真实系统采用的是Windows(64位),使用IntelCorei5-3230M的CPU,4GB内存。
如无特别说明,本系列所有的实验都会在这个配置中完成。
这里还需要说一下系统的备份,因为在分析病毒程序时,我们的虚拟系统或多或少地会被病毒所破坏,而备份功能则可以将系统很好地恢复到被破坏前的状态。
在VirtualBox中,可以在“控制”菜单下选择“生成备份”,输入备份名称后保存。
这样,以后如果想还原系统,可以选择“恢复备份”,至此,我们的实验环境基本配置完毕。
作为本系列研究的开始,我选择“熊猫烧香”这个病毒为研究对象。
之所以选择这一款病毒,主要是因为它具有一定的代表性。
一方面它当时造成了极大的影响,使得无论是不是计算机从业人员,都对其有所耳闻;
另一方面是因为这款病毒并没有多高深的技术,即便是在当时来讲,其所采用的技术手段也是很一般的,利用我们目前掌握的知识,足够将其剖析。
因此,我相信从这个病毒入手,会让从前没有接触过病毒研究的读者打消对病毒的恐惧心理,在整个学习的过程中开个好头。
本篇文章先研究如何对“熊猫烧香”进行手动查杀。
这里所说的手动查杀,主要是指不通过编写代码的方式对病毒进行查杀。
说白了,基本上就是通过鼠标的指指点点,有时再利用几条DOS命令就能够实现杀毒的工作。
但是不可否认的是,采用这种方法是非常粗浅的,往往不能够将病毒彻底查杀干净,但是从学习手动查杀病毒起步,有助于我们更好地理解反病毒的工作,从而为以后更加深入的讨论打下基础。
需要说明的是,手动查杀病毒并不代表在什么软件都不使用的前提下对病毒进行查杀,其实利用一些专业的分析软件对于我们的查杀病毒的还是很有帮助的,这些工具我会在对不同的病毒的研究中进行讲解。
另外,出于安全考虑,我的所有研究文章,都不会给大家提供病毒样本,请大家自行上网寻找,我只会给出我所使用的病毒样本的基本信息。
二、手动查杀病毒流程
手动查杀病毒木马有一套“固定”的流程,总结如下:
1、排查可疑进程。
因为病毒往往会创建出来一个或者多个进程,因此我们需要分辨出哪些进程是由病毒所创建,然后删除可疑进程。
2、检查启动项。
病毒为了实现自启动,会采用一些方法将自己添加到启动项中,从而实现自启动,所以我们需要把启动项中的病毒清除。
3、删除病毒。
在*步的检查启动项中,我们就能够确定病毒主体的位置,这样就可以顺藤摸瓜,从根本上删除病毒文件。
4、修复被病毒破坏的文件。
这一步一般来说无法直接通过纯手工完成,需利用相应的软件,不是我们讨论的重点。
三、查杀病毒
我这里研究的“熊猫烧香”病毒样本的基本信息如下:
MD5码:
87551e33d4e586d25a9f8522,
Sha-1码:
cbbab5d5de593259c9b2fe4b0d967bc7
文件大小:
59KB
大家在网上搜索到的病毒样本可能与我的不同,但是基本上都是大同小异的,查杀的核心思想还是一样的。
这里我将病毒样本拷贝到之前配置好的虚拟机中(注意要备份),首先打开“任务管理器”查看一下当前进程:
因为我的虚拟机系统中没有安装任何软件,是很纯净的,所以一共有18个进程(包含任务管理器进程),可以认为这18个进程是系统所必须的。
有时我们就需要这样的一个纯净系统,来与疑似中毒的系统进行进程的对比操作。
然后我们运行病毒,再次尝试打开“任务管理器”,发现它刚打开就立刻被关闭了,说明病毒已经对我们的系统产生了影响,而这第一个影响就是使得“任务管理器”无法打开。
不过没关系,我们可以在cmd中利用“tasklist”命令进行查看:
通过对比可见这里多出了一个名为的进程,那么我们可以通过命令“taskkill/f/im1820”(强制删除PID值为1820的文件映像),从而将这个进程结束掉:
这时就可以发现“任务管理器”可以被打开了,说明我们工作的第一步是成功的。
然后需要对启动项进行排查,可以在“运行”中输入“msconfig”:
这里很快就能够锁定“”这一项,我们首先需要记下其文件位置:
C:
\WINDOWS\system32\drivers\
然后是注册表位置:
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
然后将这个启动项前面的对勾取消,来到注册表相应的位置,将Run中的“”删除,并且删除病毒文件本体:
以上工作完毕后,重启系统,再次打开“任务管理器”,可以被正常打开,说明我们的工作是成功的。
然后打开“我的电脑”,用鼠标右键点击一下各个盘符(我的系统只有C盘):
我们在手动查杀病毒的时候,就应该养成一个习惯,那就是使用右键来打开盘符,而不是通过双击左键的方式。
在这里我们可以看到,鼠标右键菜单中多出来了一个“Auto”项,那么很明显C盘中存在的文件。
可以在cmd中查看一下:
因为我已经确定C盘中存在文件,而使用dir命令却没有看到,说明它应该是被隐藏了,所以这里要使用“dir/ah”(查看属性为隐藏的文件和文件夹)命令。
而我们也确实发现了与这两个可疑文件(因为正常文件是不需要隐藏的,特别是EXE文件更加不需要隐藏自己,所以这个属于可疑文件)。
因为这两个可疑程序的属性是隐藏的,所以这里可以先去掉其隐藏属性,然后再进行删除:
重启系统后,所有手动查杀病毒的工作完毕,我们的系统就又恢复正常了。
四、小结
事实上,“熊猫烧香”对于我们的电脑的危害远不止于此,只是说在不使用任何辅助工具的前提下,我们能做的基本上就是这些了。
对于“熊猫烧香”病毒的手动查杀部分就到这里,在以后对于别的病毒的研究中,由于它们比“熊猫”要强大,我们不得不使用一些专业工具作为辅助。
也希望大家能够亲自去尝试,勤动手,由这里开始,不再惧怕病毒。
为了分析“熊猫烧香”病毒的行为,我这里使用的是ProcessMonitor版。
行为分析的目的,是为了编写出病毒的专杀程序。
当然,由于现实环境的种种限制,可能无法发现病毒的所有行为,这些我都会在文章中进行说明。
二、对“熊猫烧香.exe”进程树的监控分析
这里我将病毒和ProcessMonitor复制到之前配置好的虚拟机中,并做好备份。
然后先打开ProcessMonitor,在筛选条件中将“熊猫烧香.exe”加入到筛选器的“ProcessName”中,然后运行病毒,首先可以查看一下进程树:
图①
在进程树中可以发现,“熊猫烧香.exe”衍生出了“”。
衍生出的进程又打开了两次“”。
第一次运行的命令是“/cnetshareC$/del/y”,它的意思是在命令行模式下删除C盘的网络共享,执行完后关闭。
因为我的系统只有一个C盘,因此有理由相信,这个病毒应该是会关闭系统中所有的盘的网络共享。
第二次运行的命令是“/cnetshareadmin$/del/y”,这里取消的是系统根目录的共享。
那么由此就可以总结出病毒的两点行为:
病毒行为1:
病毒本身创建了名为“”的进程,该进程文件的路径为“C:
\WINDOWS\system32\drivers\”。
病毒行为2:
在命令行模式下使用netshare命令来取消系统中的共享。
三、对“熊猫烧香.exe”注册表监控分析
对于注册表的监控,我们发现只有一项需要注意:
注册表的这个位置主要用于随机数种子的生成,仅仅依靠这条信息是无法推测病毒的行为的,所以可以认为“熊猫烧香.exe”对于注册表没有什么实质的影响。
四、对“熊猫烧香.exe”文件监控分析
对于文件的监控,也只有一条需要注意:
创建文件
可见,“熊猫烧香.exe”在“C:
\WINDOWS\system32\drivers”中创建了“”,其它再无可疑操作,那么可以认为,这个病毒真正的破坏部分是由“”实现的,那么接下来的工作就是专门监控这个进程。
五、对“”注册表监控分析
这里需要将进程名为“”的进程加入筛选器进行分析。
一般来说,病毒所产生的操作会比较多,所以我这里为了便于讨论,我每次只会列出几项操作进行显示,其它的操作就由筛选器排除掉。
首先可以查看一下“Reg*Value”这个操作:
可见病毒程序将当时几乎所有的安全类工具的自启动项给删除了,就有:
病毒行为3:
删除安全类软件在注册表中的启动项。
然后只保留“Reg*Key”与“RegSetValue”
可见,病毒程序为自身创建了自启动项,使得每次启动计算机就会执行自身,则有:
病毒行为4:
在注册表“HKCU\Software\Microsoft\Windows\CurrentVersion\Run”中创建“svcshare”,用于在开机时启动位于“C:
\WINDOWS\system32\drivers\”的病毒程序。
对注册表的这个位置进行设置,能够实现文件的隐藏。
此处进行设置后,即便在“文件夹选项”中选择“显示所有文件和文件夹”,也无法显示隐藏文件,则有:
病毒行为5:
修改注册表,使得隐藏文件无法通过普通的设置进行显示,该位置为:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL,病毒将CheckedValue的键值设置为了0。
至此,注册表部分就基本分析完毕了。
六、对“”文件监控分析
文件的监控,主要看的是病毒是否将自己复制到其他目录,或者创建删除了哪些文件等,监控如下所示:
图二在图中可以看到,病毒文件在“C:
\WINDOWS\system32\drivers”中创建了“”这个文件,在C盘根目录下创建了“”与“”,并且在一些目录中创建了“”这个文件。
由于创建这些文件之后就对注册表的SHOWALL项进行了设置,使得隐藏文件无法显示,那么有理由相信,所创建出来的这些文件的属性都是“隐藏”的,于是有:
病毒行为6:
将自身拷贝到根目录,并命名为“”,同时创建“”用于病毒的启动,这两个文件的属性都是“隐藏”。
病毒行为7:
在一些目录中创建名为“”的隐藏文件。
七、对“”网络监控分析
现在只进行网络监控,来查看病毒是否有联网动作:
从监控结果可以看到,病毒会向“发送并接收信息,并不断尝试连接“即局域网中的其它计算机,于是有:
病毒行为8:
向外发包,连接局域网中其他机器。
八、小结
至此,我们已总结出病毒的8点行为,在分析的过程中,我基本上是一语带过,主要是因为病毒比较简单,加上它在ProcessMonitor面前也是无所遁形。
但是请大家注意,以上8点不代表就是病毒的所有行为,因为更加详细的结论是要通过逆向分析才能得出的。
而通过上述的分析结果,我们就可以着手专杀工具的编写了,这将会在*文章中详述。
然后先打开ProcessMonitor,在筛选条件中将“熊猫烧香.exe”加入到筛选器的“ProcessName”中,然后运行病毒,在进程树中可以发现,“熊猫烧香.exe”衍生出了“”。
对于注册表的监控,我们发现只有一项需要注意,对注册表的写入
首先可以查看一下“Reg*V
然后只保留“Reg*Key”与“RegSetValue”进行分析:
接下来还有
在图中可以看到,病毒文件在“C:
对病毒进行逆向分析,可以彻底弄清楚病毒的行为,从而采取更有效的针对手段。
为了节省篇幅,在这里我不打算将“熊猫烧香”进行彻底的分析,只会讲解一些比较重要的部分,大家只要掌握了这些思想,那么就可以处理很多的恶意程序了。
一般来说,对病毒的静态分析,我们采用的工具是IDAPro,动态分析则采用OllyDbg。
由于后者会使病毒实际运行起来,所以为了安全起见,最好在虚拟机中操作。
另外,在实际分析过程中,我们可能还需要一些辅助工具,比如侦壳或脱壳程序等。
为了简单起见,这次研究的“熊猫烧香”程序并没有加壳,但是以后我们会讨论如何应对加壳或采用了其它保护手段的病毒。
二、查壳操作
逆向分析的第一步就是用查壳工具对目标程序进行查壳操作。
由Delphi所编写的代码与VC++所编写的代码有所不同,最明显的两点区别如下:
1、函数调用时参数的传递不完全用栈,而是主要用寄存器,即Delphi编译器默认以register方式传递函数参数。
这一点与VC编译的程序完全不同。
Delphi一般将第一个参数放入eax寄存器,第二个参数放入edx,第三个参数放入ecx寄存器,其余参数按照与VC程序类似的方式压栈。
2、栈上给局部变量分配空间的时候,栈是向下增长的,而栈上的数组、字符串、结构体等却是向上增长的。
理解这一点可以帮助识别栈上的变量。
对病毒样本进行了简单的侦测之后,就确定了分析的方向,那么接下来就需要使用反汇编工具进行分
三、“熊猫烧香”的初步分析
这里我使用IDAPro载入病毒样这里最开始的两个*调用的都是名为sub_403C98的函数,IDAPro已经将其中第二个*上方的字符分析出来了,是一段作者感言信息。
所以有理由相信,第一个*上方应该也是一段字符串,这里可以结合OD来查看一下:
可见,第一个*上方的字符串就是“***武*汉*男*生*感*染*下*载*者***”,可以理解为是病毒作者信息,那么接下来就有必要分析一下病毒程序利用这两段字符串究竟做了什么。
也就是进入*的内部,即sub_403C98去研究一下:
[mw_shl_code=asm,true]CODE:
00403C98sub_403C98procnear;
CODEXREF:
sub_403ED4+8j
CODE:
00403C98;
sub_403F18+6j...
00403C98testedx,edx
;
对edx进行验证,这里的test相当于and,不同的是test只进行比较,而不会将结果保存
在edx中。
由于edx保存的是病毒作者所编写的一段字符串,因此这里的结果一定是非0的。
00403C9Ajzshortloc_403CC0
由于*条语句的结果是非0的,因此这条跳转语句并不会被执行到。
00403C9Cmovecx,[edx-8]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 个人 分享 木马病毒 总结
![提示](https://static.bdocx.com/images/bang_tan.gif)