查找与清除线程插入式木马( 二 )


1)对照备份的常用进程
大家平时可以先备份一份进程列表,以便随时进行对比查找可疑进程 。方法如下:开机后在进行其他操作之前即开始备份,这样可以防止其他程序加载进程 。在运行中输入“cmd”,然后输入“tasklist /svc >X:processlist.txt”(提示:不包括引号,参数前要留空格,后面为文件保存路径)回车 。这个命令可以显示应用程序和本地或远程系统上运行的相关任务/进程的列表 。输入“tasklist /?”可以显示该命令的其它参数 。
2)对照备份的系统DLL文件列表
对于没有独立进程的DLL木马怎么办吗?既然木马打的是DLL文件的主意,我们可以从这些文件下手,一般系统DLL文件都保存在system32文件夹下,我们可以对该目录下的DLL文件名等信息作一个列表,打开命令行窗口,利用CD命令进入system32目录,然后输入“dir *.dll>X:listdll.txt”敲回车,这样所有的DLL文件名都被记录到listdll.txt文件中 。日后如果怀疑有木马侵入,可以再利用上面的方法备份一份文件列表“listdll2.txt”,然后利用“UltraEdit”等文本编辑工具进行对比;或者在命令行窗口进入文件保存目录,输入“fc listdll.txt listdll2.txt”,这样就可以轻松发现那些发生更改和新增的DLL文件,进而判断是否为木马文件 。
3)对照已加载模块
频繁安装软件会使system32目录中的文件发生较大变化,这时可以利用对照已加载模块的方法来缩小查找范围 。在“开始/运行”中输入“msinfo32.exe”打开 “系统信息”,展开“软件环境/加载的模块”,然后选择“文件/导出”把它备份成文本文件,需要时再备份一个进行对比即可 。
4)查看可疑端口
所有的木马只要进行连接,接收/发送数据则必然会打开端口,DLL木马也不例外,这里我们使用netstat命令查看开启的端口 。我们在命令行窗口中输入“netstat -an”显示出显示所有的连接和侦听端口 。Proto是指连接使用的协议名称,Local Address是本地计算机的IP地址和连接正在使用的端口号,Foreign Address是连接该端口的远程计算机的IP地址和端口号,State则是表明TCP连接的状态 。Windows XP所带的netstat命令比以前的版本多了一个-O参数,使用这个参数就可以把端口与进程对应起来 。输入“netstat /?”可以显示该命令的其它参数 。
【查找与清除线程插入式木马】接着我们可以通过分析所打开的端口,将范围缩小到具体的进程上,然后使用进程分析软件,例如《WINDOWS优化大师》目录下的WinProcess.exe程序,来查找嵌入其中的木马程序 。有些木马会通过端口劫持或者端口重用的方法来进行通信的,一般它们会选择139、80等常用端口,所以大家分析时要多加注意 。也可以利用网络嗅探软件(如:Commview)来了解打开的端口到底在传输些什么数据.

推荐阅读