疱丁解马之木马查杀深度剖析 下载本文

疱丁解马-木马查杀深度剖析

一、前言

在进入正文之前呢,容我先说几句废话。

在写此文之前,我曾写过一篇“高级木马的自我保护技术与查杀之策”,承蒙各位朋友的厚爱,被各网站所转载,亦曾有许多朋友来信求助。

由于该文是心血来潮后的随笔所写,所以并没有经过深思熟虑,也并没有脉络可循,至使有的朋友能看懂,有的却看不懂。而看得懂的呢,亦有很大一部分并不能真正的应用文中所提的查杀技巧。

故一直有心再写一篇文章,帮助深受木马毒害的朋友们了解木马是什么,又如何查杀。 本文适于下列人员阅读: ? 能熟练使用计算机的人 ? 想自己动手解决问题的人

? 钱没有多到电脑一出问题就扔到电脑修理公司的人 适于下列人员参考: ? 电脑维修人员 ? 微机管理人员

? 安全相关的程序开发人员 本文所要达到的目的是:

? 让菜鸟也可以了解系统安全自己来动手查毒杀马,由求助者变为帮助它人者。 ? 在杀毒软件无能为力的情况下,借助本文的知识让你仍然能借助工具完成清理查杀

的任务。

? 让您真正的明白一些看似神秘的、高深莫测的专用术语与技术的内幕。 ? 让您了解Windows系统的底层知识。

本文以手动查杀为主,辅以必要的工具,文中用到的工具与测试用的仿木马小程序都提供了下载地址,供朋友们下载试用。

本文作者为MuseHero,您可在网络上任意转载,但请注明出处、作者并保持文章的完整性,谢谢。

二、木马知识扫盲篇

什么是木马呢?木马只是一类程序的名字,为实现特殊目的而制作并偷偷植入目的计算

机中的程序的统称。

其名字源于古希腊神话《木马屠城记》,全名为“特洛伊木马”有兴趣的可以翻看相关资料,很不错的一篇故事。

那什么又是程序呢?呵,即然是扫盲篇,我们就不能回避这些让人头都大的问题,先从最基本的开始,熟悉计算机的朋友们可以直接跳到第三章去。

我们先了解一些基本的概念:

概念一:计算机。就是我们的电脑了,指的就是一堆硬件,显示器、主机、键盘、鼠标等等,当然了,拆开主机还有一堆零碎。我们只需要了解其中几个后面会提到的就行了。

CPU:计算机的指令处理单元。所有的工作都是由它来做的,同一个CPU同一时间只能处理一条指令,就是说一旦CPU被某一程序占用,那在同一时刻内其它程序就肯定是空闲等待状态(双核的可以同时执行两条,以此类推)。

内存:内部存储器。CPU执行的指令都是由内存中读取的,所以,一个程序要运行首先要装入到内存中。

磁盘:外部存储器。存放文件数据的地方。计算机中所有的数据平时都是存在这里的,只有在需要执行或查看时,才读取到内存中。

但只有硬件,是不能使用的,还需要软件的配合,我们买电脑时电脑中大都安装了某一操作系统,主流的就是MS Windows系统了(还有其它的操作系统如Linux等,这里不做讨论)。这就是我们需要了解的也是以后要频繁出现的第二个概念了“系统”。

概念二:系统。系统其实在大多数情况下都指的是操作系统,也就是帮我们使用与管理硬件的软件系统,当我们按下机箱电源后,即由主板上的BIOS检测硬件、再交由硬盘中的引导程序启动操作系统,然后就出现了我们所熟悉的Windows主窗口(计算机在启动时做了些什么,我们会在后面详细的讲解),而以后我们的所有工作,看电影、听歌曲、玩游戏、上网浏览等等都是在这个窗口中进行。操作系统维持这个窗口的显示及一些常用功能的完成,而这些功能是由一系列的程序来实现的,这又引出了我们的第三个概念“程序”

概念三:程序。程序是什么呢?程序就是一组指令执行序列。呵,有点专业了是不?什么又叫指令执行序列呢?

举例来说:我管理着一个工厂,正常情况下我让工人们按这样来工作“先去原料仓库取原料---? 进行初步加工---? 进行精细加工--? 进行零配件组装---? 验收---? 合格则送入成品库--? 不合格则销毁”。这就是一个指令执行序列,当情况为正常时,工人们执行的是这个序列也就是这个“程序”。而在旺销的季节呢,我还有第二个程序“取原料----? 进

行初步加工----? 组装 ----? 进成品库”。当情况为供不应求时,我就执行第二个程序。还有第三个、第四个??等等,在不同的情况下,我让工人们执行不同的程序。

计算机程序也是一样的,跟据用户要求的不同,执行不同的指令序列,比如您要画图,你可能会这么操作“点击开始菜单--? 选择所有程序--?在所有的程序中选择附件--?再在附件中选择画图”,这就是你向操作系统下达的指令。操作系统得到您的指令后,则会执行画图程序,也就是实现画图目的的一系列指令,而这些画图的指令储存在“mspaint.exe”文件中。操作系统会将mspaint.exe中的指令装入到内存中交由CPU开始一条条的执行。

总结一下:程序是什么呢?说白了就是一个计划书,里面记载了先做什么后做什么。好的程序是好的计划,坏的程序就是坏的计划,比如:“收集炸药--? 买雷管--?制成炸弹-?放到张三的床下面-?引爆”,这就是一个坏计划,相对于计算机来说就是一个坏程序。坏程序有破坏作用吗?也就是说你写了个爆了张三的计划书就可以炸了张三吗?当然不可以,只有计划是不行的,还要去执行才能真正起到作用。所以,一个木马程序仅仅是存在于您的计算机中时并不可怕,可怕的是它执行起来。程序执行起来是什么呢?那就是我们要说的第四个概念“进程”--? 执行中的程序。

概念四:进程。程序一旦进入内存中开始执行,就叫做进程(进程其实就是容纳指令与资源的容器)。也就是说,他已经开始工作了,开始买炸药、制炸弹了,等执行到引爆那一条指令时,张三也就完蛋了。所以,检查可疑进程,就是查杀木马的关键环节,也是重要的手段与方法。找到木马的进程,并结束它,在它执行到引爆这条指令之前,就停止它的执行,并将它的程序自计算机中删除掉,就是我们所要达到的目的。

说到这里,细心的读者们可能想到了一个问题,画图程序的执行,是因为我们向操作系统下达了画图的指令,所以操作系统才调入画图程序开始执行画图的指令序列。但是木马程序又是谁给操作系统下达的指令让木马的工作计划得到执行的呢?这就是我们下面要说的第五个概念“自启动程序”

概念五:自启动程序。顾名思义,自启动程序,也就是不用您自己动手它自己就可以启动起来开始执行的程序。这是些什么程序呢?为什么要允许程序这样做呢?难道是专为木马准备的?呵,当然不是。自启动程序有二大类,一是系统需要的;二是用户需要的。

系统需要的,是因为有些工作是无须经过用户同意,必须去做的。比如,鼠标驱动。为了能让用户使用鼠标,系统要自动加载鼠标驱动程序并执行。

用户需要的,一些重复性工作可能用户想让系统自动去做,而不是每天每时的重复这份工作。比如:用户可以设定多长时间无操作,就自动运行屏幕保护程序以便保护屏幕不被烧

坏。这显然必须要屏幕保护程序能自动的运行,用户是不可能每次手动去执行这个程序的。

而木马就是利用了这些本来是为系统或用户提供方便的手段,来实现自动运行它们自己的目的。如:木马用自己来取代屏幕保护程序,这样,长时间无操作时,运行的就不再是屏幕保护程序而是木马了。

在系统中有很多地方或方法是可以让程序自动运行起来的,这个我们在后面将一一讲述。而清掉自启动项,让木马程序得不到执行,显然也就成为了我们查杀木马的重要手段之一。

而系统又是如何知道,哪一个程序应该在开机后就自动运行,无须等用户来操作呢?朋友们应该能猜到,系统肯定是把这些需要自动运行的程序都记录到了某一个地方,记录到哪里了呢?这就是我们要讲的第六个概念“注册表”

概念六:注册表。注册表是什么呢?是系统记录信息用的一个数据库,举例来说它就像公司档案柜一样,发工资时,财务人员要查阅档案,以确定哪个员工应该发多少钱。就像系统启动时查阅注册表,确定哪个程序应该自动启动起来一样。

这是一个非常宠大的数据中心,系统的关键信息都记录到那里,与现实中我们的档案柜一样,都很重要,一旦损坏将造成无可挽回的后果,所以微软公司不建议直接对注册表进行操作。当然了,木马的作者通常是不会理会微软的建议的。所以,木马通常都会将自己写入到注册表的某个自启动项中,以便开机时自动运行,而无须经过用户的同意。

讲到这里,又有一个不容回避的问题出现了,上面我们说了,木马程序其实就是一个计划书,而为了执行这份计划书,木马需要把自己写到注册表中的自启动程序序列中去。而问题就是,这份计划书是如何来的呢?如果得不到执行,它又如何将自己写到注册表的自启动程序中去呢?不放到自启动程序中它就得不到执行,而得不到执行,它也就无法起到作用也包括无法将自己写到注册表中去??晕了,这成了先有鸡还是先有蛋的问题了。那么木马是如何进入我们的计算机并获得首次执行的呢?

这就是我们要讲的第七个概念了“侵入”

概念七:侵入。侵入是什么呢?也就是侵略进入喽,侵略需要被侵略者同意吗?当然不需要。将木马程序放入您的计算机,并让它得到首次执行的过程就是侵入。

侵入的方法有很多种,我们将在后面主动防御一章中详细讲解。因为,相信现在朋友们最关心的并不是如何不让他进来,而是??我的电脑中现在是不是正在执行着木马程序呢?已经执行到了哪一步呢?是否马上就要引爆了呢?我关机后下次还能打开不?

好,接下来,就让我们进入下一章,一起来看看,电脑中正在执行的木马程序“木马进

程”。

三、木马的查杀之进程篇

1、进程的查看

进程,我们上面说过了,狭义上讲就是正在执行中的程序。那如何来查看系统中都有哪

些程序正在执行呢?(先看下图03-1:)

(图片编号:03-1)

系统自带了一个“任务管理器”可以使我们看到系统中当前的进程,在桌面下方的任务栏按右键,选择“任务管理器”或同时按下“Ctrl Alt Del”三个键、或同时按下“Ctrl Shift ESC”三个键,都可以打开任务管理器程序,看到上面的窗口。

看到上面的图时,会不会有点发昏?20个进程,哪个是好的哪个是坏的呢?上面的信

息又都是些什么意思呢?

不要着急,让我来教教你怎么来看这些信息。

首先,显示哪些信息,是可以自由选择的,看到最上面的菜单没?就是“文件、选项、

查看、关机、帮助”。依次选择“查看”---?“选择列”并勾选里面的相应项就可以显示相应的信息。