命令行下的抗毒精英

06-17

  一、TASKLIST——火眼金睛

  如今的病毒越来越狡猾,常常不见首也不见尾。但许多病毒往往在进程这一环节中露出狐狸尾巴,因而查看进程是查杀病毒的一个重要的方法。命令行提供了进程查看的命令工具——Tasklist(Windows XP或更新版本)。此命令与任务管理器一样可以显示活动进程的列表。但通过使用参数,可以看到任务管理器查看不到的信息,可以实现更强大的功能。使用参数“/M”,运行“Tasklist /M”将显示每个任务加载的所有的DLL模块;使用参数“/SVC”,运行“Tasklist /SVC”命令则会显示每个进程中活动服务的列表,从中可以看到进程svchost.exe加载的服务,通过服务就能分辨出究竟是不是恶意病毒进程。此外,还能利用Tasklist命令来查看远程系统的进程,如在命令提示符下输入“Tasklist /s 208.202.12.206 /u friend /p 123456”(不包括引号)即可查看到IP地址为208.202.12.206的远程系统的进程。其中/s参数后的“208.202.12.206”指要查看的远程系统的IP地址,/u后的“friend”指Tasklist命令使用的用户账号,它必须是远程系统上的一个合法账号,/p后的“123456”指friend账号的密码。这样,网管进行远程查杀病毒也就方便多了。

  二、TASKKILL——进程杀手

  有了Tasklist这双火眼金睛,许多病毒就现身了,但更重要的不是找出病毒,而是要清除它们,这时另一个命令——TASKKIL就派上用场了。例如想结束某个进程,只需从任务管理器中记下进程名,运行下列命令即可:“TASKKILL /F /IM 进程名”;也可以通过连接PID的方式,可先运行“Tasklist”命令,记下进程的PID号,在命令提符下输入“taskkill /pid PID号”即可。说到这里恐怕有人要说这还不如直接利用任务管理器方便。而实际上TASKKILL命令的独门绝技就在于它能结束一些在任务管理器中不能直接中止的进程,这时就要加上参数“/F”,这样就能强制关闭进程,例如运行“TASKKILL /F /pid 1606”命令就能强制结束PID为1656的进程。除此之外,TASKKILL命令还能结束进程树、远程进程、指定筛选进或筛选出查询的的进程,具体操作可利用“taskkill/?”命令进行查看。

  三、 Netstat——端口侦探

  如今的木马越来越多,对用户的威胁也越来越大,于是出现许多专门用于木马查杀的工具。其实只要我们合理使用命令行下的Netstat命令就能查出大部分隐藏在电脑中的木马。

  我们知道,大部分木马感染系统后都留有服务端口,而这类服务端口通常都处于LISTENING状态,因而从端口的使用情况可以查到木马的踪迹,而这利用Netstat命令就能轻松实现。在命令行中运行“Netstat –a”,这个命令将显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。其中Proto代表协议,Local Address代表本机地址,该地址冒号后的数字就是开放的端口号,Foreign Address代表远程地址,如果和其它机器正在通信,显示的就是对方的地址,State代表状态,显示的LISTENING表示处于侦听状态,就是说该端口是开放的,由于木马开启后门成功后该后门处于LISTENING状态,因此你需要注意的就是处于LISTENING状态的端口,如果该端口号陌生,而且端口号数很大,你就应该有所警觉。

  还可以查看使用端口所对应的进程来进一步确认,这就需要加上参数“-O”,运行“Netstat –ao”命令就会显示一个所有的有效连接信息列表,并给出端口对应的PID号。

  四、 FIND——捆绑克星

  相信许多人都上过文件捆绑木马的当,表面看起来是一张漂亮MM的图片,而暗地里却隐藏着木马,这种通过文件捆绑进行隐藏是木马的惯用伎俩。而对可疑文件进行必要的检查及时处理往往就能防止产生更严重的后果,于是网上也出现了一些检查捆绑文件的工具。

  在Windows中,也可通过命令行巧妙地进行简单的检查。这里要用到字符串搜索命令——FIND,它的主要功能是在文件中搜索字符串,可以利用它进行捆绑文件的检查。方法为:在命令行下运行“FIND /C /I "This program" 待查文件的路径 ”(不包括外面的引号),如果是EXE文件,正常情况下返回值应该为“1”,如果出现大于1的情况,你就必须小心了;如果是图片之类的不可执行文件,正常情况下返回值应该为“0”,如果出现大于0的情况,就应该引起注意。

  五、 NTSD——强力终结者

  如今的病毒越来越狡猾,经常出现即使你能找到它的进程,却不能结束的情况。用任务管理器和前面提到的TASKKILL命令都没有办法中止。当然可以使用进程管理工具,如功能强大Process Explorer等。而实际上使用Windows自带的一个秘密工具就能强制结大部分进程,包括一些十分顽固的进程,这就是NTSD命令。

  在命令行中运行以下命令:

  ntsd -c q -p PID

  最后那个PID指要终止的进程的ID。如果不知道进程的ID,可通过Tasklist命令进行查看。利用NTSD命令,除了System、SMSS.EXE和CSRSS.EXE等极少核心进程不能杀外,其它进程都可以强行结束。

  六、 FTYPE——文件关联修复专家

  和文件捆绑一样,篡改文件关联也是病毒或木马的惯用伎俩,通常的恢复方法主要是通过修改注册表,但注册表操作通常比较麻烦而且容易出错,另一个更方便的方法是使用命令行工具——FTYPE,利用它可以非常轻松地恢复文件关联。比如exefile的文件关联最容易被修改,它的正常的文件关联为:"%1" %* 。恢复的时候,只需在命令行中运行下列命令:“ftype exefile="%1" %* ”就可以了。如果要修复txtfile的文件关联,只需输入:“ftype txtfile= %SystemRoot%system32NOTEPAD.EXE %1 ”即可。

  七、FC——注册表监控器

  许多病毒木马都把注册表当作攻击对象,如上面提到的文件关联篡改,而现在所谓的流氓软件之流的不安分的软件在注册表中添加本不应该添加的项值,因而注册表监控就变成十分必要了。于是出现了许多注册表监控类软件,其实我们完全可以仅用Windows系统提供的工具完成该功能。

  下面以监控安装软件过程对注册表做的修改为例介绍如何实现“监控”:

  首先,可以在安装软件前备份一次注册表(存储为REG文件,如1.reg),安装后再导出注册表文件(2.reg)然后再在Windows XP的命令提示行下执行下列命令:

  D:>fc /u 1.reg 2.reg>changes.txt

  随后在D盘根目录下打开changes.txt文件,即可清楚地查看该软件对注册表添加了哪些子项,做了什么修改。上例中的安装软件是一个特定的时刻,你可能用此方法分析任一时刻注册表可能发生的变化。