首页 > 范文大全 > 正文

流氓软件都是纸老虎寻根问底

开篇:润墨网以专业的文秘视角,为您筛选了一篇流氓软件都是纸老虎寻根问底范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

流氓软件还是在浏览器中加载一个工具条、弹出几个窗口的小插件么?非也!当它们开始使用底层挂接、进入系统驱动层时,就不再是单纯的流氓软件了,而应该被称为亚病毒!

今天要讨论的是如何根据流氓软件的常见行为、常驻区域来清理以及预防他们。不要担心,流氓软件其实都是纸老虎,只要有耐心,完全可以手工清理。

流氓软件的入侵方式

不同流氓软件的入侵方式是不同的,但是它们具有一些共通之处。一般来说,它们会在硬盘中写入某些exe、dll或sys文件,然后篡改注册表,使这些文件能够在系统启动时自动运行,甚至是直接安装为系统服务和驱动。而系统文件夹和注册表自然就成为了流氓泛滥的“重灾区”,比如一些系统默认的位置:系统盘根目录、X:\Windows\、X:\Windows\System32\、X:\Windows\System32\Drivers\、X:\Program Files\Common Files\,以及注册表中的Run、RunOnce、Services等键值。

突破点 进程!

一般来说,流氓软件都会有自己的进程,如果在任务管理器中发现了可疑的进程,最好到网上去搜索一下,一般都能找到相应的说明。要注意的是,某些流氓软件进程的名称和系统默认的进程很相近,如csrssc.exe、svchot.exe、smss.dll等,不要漏掉或误判了。

如果你没有十足的把握,可以用下面两个方法来判断。首先要找到这些进程的位置,Windows XP下可以用Process Explorer(下载地址/pcd)来帮忙(图1)。

方法1:打开包含该程序的文件夹,在主菜单上选取“查看选择详细信息”,选择“创建日期”,确定后在资源管理器空白处单击鼠标右键,选择“排列图标创建日期”。这样,我们就能找到最近几天创建的新文件,如果这些流氓是新闯进来的,那么就能很快地和其他正常文件区别开来。

方法2:点击“开始运行”,输入“sigverif.exe”并回车。系统会弹出“文件签名验证工具”,这个工具可以验证某个程序是否是Windows自带的,以及是否被其他程序篡改过。

依次选择“高级查找其他未经过数字签名的文件”,在文件类型中输入程序名称,并填入所在的文件夹,点击确定就可以开始验证了(图2)。

一般来说,这个工具只用作验证Windows和System32下的exe和dll文件,如果验证不通过,只说明该文件不是微软提供的,有可能是其他厂商的正常程序。实在拿不准时,可以看一看这个程序的版本信息,如果没通过验证还写着

Microsoft之类的字眼,那就铁定是冒牌货了。

最基本的清理方法 删除文件

确定流氓软件的可执行文件后,就要结束该进程并删除它。但是,有时候这些进程很难被结束掉,它们会自动重新运行。这样就需要到安全模式下删除,如果还是不行就只能把计算机启动到非硬盘系统环境进行彻底地清理。

如今最好使用Windows PE系统光盘来做此类工作,它完全和硬盘上的操作系统独立,所以再强悍的流氓也逃不过此类绝招。在Windows PE下,我们不但可以轻松地访问NTFS分区,还可以使用很多第三方工具对计算机进行管理(图3)。

流氓手段揭密一 伪装成服务

如果可疑进程的用户名为“SYSTEM”、“LOCAL SERVICE”或者“NETWORK SERVICE”,就说明它属于系统进程,一般都对应某个系统服务。

在“我的电脑”上点击右键,选择“管理”,在弹出的“计算机管理”控制台窗口中选择“服务和应用程序服务”,仔细查找一下右边区域列出的系统服务是否有比较可疑的。在每条服务上点击右键,再选择“属性”即可查看详细的信息(图4),注意重点查看“可执行文件的路径”这一条是否和那些任务管理器中出现的可疑应用程序一致。如果两者完全相同的话,请记下该条服务的“服务名称”(注意不是“显示名称”),然后打开注册表编辑器,并定位到“HKEY_LOCAL_MACHINE\SYS T EM\ C u r r e n t C o n t r o l S e t \Services”,在下面找到与之对应的主键,删除后重新启动计算机,这个服务就会彻底消失了。

如果你不太确定某个服务是否是系统默认存在的,可以在“运行”对话框中输入“msconfig”并确定,启动系统配置实用程序(Windows 2000默认不带此工具,可以从XP下复制一份来使用)后在其窗口的“服务”选项卡内选择“隐藏所有Microsoft服务”,这样便能看到当前所有不属于系统自带的服务。

流氓手段揭密二 隐藏进程

前面说的是有进程的流氓软件,然而很多时候我们能明显地觉察到系统运行缓慢或者总是不断地弹出广告窗口,但却怎么也找不到可疑的进程。

现在很多流氓软件只是一个挂接到系统底层的dll文件,甚至是tmp临时文件,比如挂接到网络底层的SPI程序。这样就不会有进程,他们只是把自身(一般是一个dll库文件)写入注册表,以替代所有网络程序都要加载的系统组件(WinSock2服务模块,同样是dll库文件)。这样一来,所有的网络进程都会调用流氓软件提供的接口,甚至是系统进程也会依赖于它们。还有一种常见的无进程流氓软件形式就是BHO(浏览器辅助对象)插件。由于Internet Explorer采取了开放式的设计,可以让第三方厂商在浏览器中加入很多的辅助功能插件,然而早期的IE在编写时又对安全性考虑不足,所以便致使很多的恶意浏览器插件不请自来,并且赖在用户系统中无法卸载。

对于前一种情况,我们可以使用一款叫做WinSockFix(下载地址/pcd)的软件来进行修复,由于WinSock2服务层在注册表中的结构过于复杂,所以不推荐手动修改。而后一种情况,我们可以直接在Windows XP SP2下禁用之,打开IE6,选择“工具管理加载项”来直接停用(图5)。一般来说,这样的修复就可以使这些插件与系统脱离关系,只是最后还要删除这些残留在硬盘中的垃圾。在此,我们同样可以用上面提到的两种方法来进行查找和验证系统中新出现的可疑文件(一般在上面提到的那些系统默认文件夹中)。

但是,很多情况下我们都不能直接删除它们,系统会提示“拒绝访问”。

这是因为Windows查找到还有打开这些文件的句柄存在(在Windows系统中,每个进程打开一次某个文件就会创建一个对应的句柄),因此只要关闭这些句柄即可。

关闭句柄的操作同样可以用Proc ess Explor e r来完成,在Proc essExplorer的菜单上选择“查找查找句柄或DLL”,并输入相关的文件名或路径便能找到相关的句柄(图6),接下来在主窗口的下面一栏点击右键选择关闭该句柄即可)。

如果你希望操作更简单一些,也可以使用“傻瓜式”的Unlocker(下载地址/pcd),来自动查找和关闭某个文件所对应的全部句柄。一般来说,这样操作之后基本能够删除在正常环境下无法删除的顽固文件,如果遇到实在无法删除的,还是老老实实到安全模式下去清理吧。

流氓手段揭密三 伪装成驱动

如果怀疑系统中的流氓软件已经进入了驱动层,可以尝试以下方法来应付。同样是打开“计算机管理”控制台,选择“系统工具设备管理器”,并在菜单上选择“查看显示隐藏的设备”。这样一来,树型设备控件下会多出一栏“非即插即用驱动程序”,我们可以在此找到一些隐藏的系统驱动程序。在这些驱动上点击鼠标右键就能查看到其属性信息,也可以直接停用或卸载它们(图7)。结合服务名称和其属性对这些驱动程序进行一一甄别,如果你对某个可疑的驱动程序没有把握,可以先停用它,重新启动计算机后观察是否依然有流氓软件活动的迹象,如果有的话则应该恢复该驱动程序并转移目标。如此反复操作,直到找到真正的流氓为止,最后直接卸载它们。

本文只是一些个人的心得体会,比较笼统,希望可以启发大家在识别和清理流氓软件上的思路。流氓软件数量众多,并且还在不断地“进化”,只有不断地摸索才能积累出一套对付流氓软件的完整经验。如果你想成为一名真正的高手,那就抛开反流氓软件,用自己的力量来对抗这些纸老虎吧。

本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。