自从恶意软件背后的黑幕公诸于众之后,越来越多的安全厂商加入围剿恶意软件的战场,但恶意软件同时也在不断进化,许多新技术应用到恶意软件的开发中,恶意软件对查杀的抵抗性越来越强。
自从恶意软件背后的黑幕公诸于众之后,越来越多的安全厂商加入围剿恶意软件的战场,但恶意软件同时也在不断进化,许多新技术应用到恶意软件的开发中,恶意软件对查杀的抵抗性越来越强。虽然在图形界面下有许多反病毒软件或恶意软件清理工具可以选择,但用户常会遇到用这类工具无法查杀恶意软件,反被恶意软件删除或禁用的情况,而在系统命令行下进行恶意软件检测和清除工作则没有以上缺点,用户了解一下具体的步骤是十分有必要的。笔者将通过实例向用户介绍一下系统命令行下进行恶意软件检测和清除的步骤、常用的系统自带的命令和第三方工具。
测试环境是运行在虚拟机中的英文版WindowsXPSP2,补丁齐全,恶意软件样本则选择了一个互联网上比较常见的木马,如下图:
|
图1 |
执行后木马程序消失:
|
图2 |
假设用户在此时发现自己的机器有异常,比如网络连接活动异常,或是反病毒软件/防火墙频繁报警,用户可以按照以下步骤检查一下:
1、先退出所有的浏览器、应用程序、即时聊天工具,检查网络连接,然后在开始菜单里的“运行”输入cmd,进入命令行状态,如下图
|
图3 |
Netstat是系统自带的网络状态检查工具,可以发现一般木马的网络活动,但无法发现一些使用Rootkit技术的恶意软件,用户可以使用Microsoft的免费工具TCPview来加强检测的效果。上图能看出Netstat和TCPview的区别,Netstat显示正常,但TCPview显示有一个由svchost.exe发起,到192.168.4.134的异常TCP连接。
2、检查完网络连接之后,接下去要检查系统中是否有异常进程,在这里我们使用系统自带的命令Tasklist:
|
图4 |
上图是使用Tasklist/svc的显示结果,/svc参数是显示进程和服务的对应关系。红框内的svchost.exe就是可疑进程,它启动了一个名为zzxrubbr的服务。顺便说一句,如果发信目标恶意软件不是安装成服务,而是独立的一个进程,用户可以使用taskkilltarget/force命令从内存中杀掉恶意软件的进程。
3、使用Microsoft的免费工具psservice来查看该可疑服务的信息,psservice可以从PSTools工具包里找到,下图是使用psservice查看zzxrubbr的结果:
|
图5 |
4、根据服务名和可执行文件名字一般是相同的和绝大部分的服务程序或其他关键文件都放在system32下这一原则,先使用系统自带的dir命令查找该可疑服务的文件:
|
图6 |
由上图可见dir命令找不到文件,dir的/a参数指显示所有属性的文件,包括隐藏和系统问题,/s参数是搜索的范围包括当前目录的所有子目录。