登录 支付宝登陆 [免费注册] 会员中心 在线支付 

如何检测ASP木马以及查杀木马的方法

1.检测木马的存在

    首先,查看system.ini、win.ini、启动组中的启动项目。由“开始->运行”,输入msconfig,运行Windows自带的“系统配置实用程序”。

    a.查看system.ini文件

    选中“System.ini”标签,展开[boot]目录,查看“shell=”这行,正常为“shell=Explorer.exe”,如果不是这样,就可能中了木马怎么删除? 

    b.查看win.ini文件

    c.选中win.ini标签,展开[windows]目录项,查看“run=”和“load=”行,等号后面正常应该为空。

    d.查看启动组

    再看看启动标签中的启动项目,有没有什么非正常项目?要是有象netbus、netspy、bo等关键词,极有可能就是木马了。本人一般都将启动组中的项目保持在比较精简的状态,不需要或无大用途的项目都屏蔽掉了。如下图,只是选中了与注册表检查、音量控制、输入法和能源保护相关的启动栏。到时要是有木马出现,自是一目了然。

    e.查看注册表

    由“开始->运行”,输入regedit,确定就可以运行注册表编辑器。再展开至:“HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRun”目录下,查看键值中有没有自己不熟悉的自动启动文件项目,比如netbus、netspy、netserver等的单词。注意,有的木马程序生成的服务器程序文件很像系统自身的文件,想由此伪装蒙混过关。比如Acid Battery木马,它会在注册表项“HKEY-LOCAL-MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun”下加入

    Explorer=“C:WINDOWSexpiorer.exe”,木马服务器程序与系统自身的真正的Explorer之间只有一个字母的差别!

    通过类似的方法对下列各个主键下面的键值进行检查:

    HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnce

    HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnceEx

    HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices

    HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRunServicesOnce

    如果**作系统是Windows NT,还得注意HKEY-LOCAL-MACHINESoftwareSAM下面的内容,如果有项目,那极有可能就是木马了。正常情况下,该主键下面是空的。

    当然在注册表中还有很多地方都可以隐藏木马程序,上面这些主键是木马比较常用的隐身之处。除此之外,象HKEY-CURRENT-USERSoftwareMicrosoftWindowsCurrentVersionRun、HKEY-USERS****SoftwareMicrosoftWindowsCurrentVersionRun的目录下都有可能成为木马的藏身之处。最好的办法就是在HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRun或其它主键下面找到木马程序的文件名,再通过其文件名对整个注册表进行全面搜索就知道它有几个藏身的地方了。

    如果有留意,注册表各个主键下都会有个叫“(默认)”名称的注册项,而且数据显示为“(未设置键值)”,也就是空的。这是正常现象。如果发现这个默认项被替换了,那么替换它的就是木马了。

    f.其它方法

    上网过程中,在进行一些计算机正常使用**作时,发现计算机速度明显起了变化、硬盘在不停的读写、鼠标不听使唤、键盘无效、自己的一些窗口在未得到自己允许的情况下被关闭、新的窗口被莫名其妙地打开…..这一切的不正常现象都可以怀疑是木马客户端在远程控制你的计算机。

    如果怀疑你现在正在被木马控制,那么不要慌张地去拔了网线或抽了Modem上的电话线。有可能的话,最好可以逮到“黑”你的那个家伙。下面就介绍一下相应的方法:

    由“开始->运行”,输入command,确定,开一个MS-DOS窗口。或者由“开始->程序->MS-DOS”来打开它。在MS-DOS窗口的命令行键入“netstat”查看目前已与本计算机建立的连接。

    显示出来的结果表示为四列,其意思分别为Proto:协议,Local Address:本地地址,Foreign Address:远程地址,State:状态。在地址栏中冒号的后面就是端口号。如果发现端口号码异常(比如大于5000),而Foreign Address中的地址又不为正常网络浏览的地址,那么可以判断你的机器正被Foreign Address中表示的远程计算机所窥视着。在对应行的Foreign Address中显示的IP地址就是目前非法连接你计算机的木马客户端。

    当网络处于非活动状态,也就是目前没什么活动网络连接时,在MS-DOS窗口中用netstat命令将看不到什么东西。此时可以使用“netstat -a”,加了常数“-a”表示显示计算机中目前处于监听状态的端口。对于Windows98来说,正常情况下,会出现如下的一些处于监听状态的端口(安装有NETBEUI协议):

    如果出现有不明端口处于监听(LISTENING)状态,而目前又没有进行任何网络服务**作,那么在监听该端口的就是特洛伊木马了!如下图所示的23456和23457端口都处于监听状态,很明显是木马造成的。

    注意,使用此方法查询处于监听状态的端口,一定要保证在短时间内(最好5分钟以上)没有运行任何网络冲浪软件,也没有进行过任何网络**作,比如浏览网页,收、发信等。不然容易混淆对结果的判断。

    2.删除木马

    好了,用上面的一些方法发现自己的计算机中了木马,那怎么办?当然要将木马删除了,难道还要保留它!首先要将网络断开,以排除来自网络的影响,再选择相应的方法来删除它。 

     a.由木马的客户端程序 

    由先前在win.ini、system.ini和注册表中查找到的可疑文件名判断木马的名字和版本。比如“netbus”、“netspy”等,很显然对应的木马就是NETBUS和NETSPY。从网上找到其相应的客户端程序,下载并运行该程序,在客户程序对应位置填入本地计算机地址:127.0.0.1和端口号,就可以与木马程序建立连接。再由客户端的卸除木马服务器的功能来卸除木马。端口号可由“netstat -a”命令查木马出来。

    这是最容易,相对来说也比较彻底载除木马的方法。不过也存在一些弊端,如果木马文件名给另外改了名字,就无法通过这些特征来判断到底是什么木马。如果木马被设置了密码,既使客户端程序可以连接的上,没有密码也登陆不进本地计算机。当然要是你知道该木马的通用密码,那就另当别论了。还有,要是该木马的客户端程序没有提供卸载木马的功能,那么该方法就没什么用了。当然,现在多数木马客户端程序都是有这个功能的。

    b.手工

    不知道中的是什么木马、无登陆的密码、找不到其相应的客户端程序、……,那我们就手工慢慢来删除这该死的木马吧。

    用msconfig打开系统配置实用程序,对win.ini、system.ini和启动项目进行编辑。屏蔽掉非法启动项。如在win.ini文件中,将将[WINDOWS]下面的“run=xxx”或“load=xxx”更改为“run=”和“load=”;编辑system.ini文件,将[BOOT]下面的“shell=xxx”,更改为:“shell=Explorer.exe”。

    用regedit打开注册表编辑器,对注册表进行编辑。先由上面的方法找到木马的程序名,再在整个注册表中搜索,并删除所有木马项目。由查找到的木马程序注册项,分析木马文件在硬盘中的位置(多在C:WINDOWS和C:WINDOWSCOMMAND目录下)。启动到纯MS-DOS状态(而不是在Windows环境中开个MS-DOS窗口),用del命令将木马文件删除。如果木马文件是系统、隐藏或只读文件,还得通过“attrib -s -h -r”将对应文件的属性改变,才可以删除。

    为保险起见,重新启动以后再由上面各种检测木马的方法对系统进行检查,以确保木马的确被删除了。

    目前也有一些木马是将自身的程序与Windows的系统程序进行了绑定(也就是感染了系统文件)。比如常用到的Explorer.exe,只要Explorer.exe一得到运行,木马也就启动了。这种木马可以感染可执行文件,那就更象病毒了。由手工删除文件的方法处理木马后,一运行Explorer.exe,木马又得以复生!这时要删除木马就得连Explorer.exe文件也给删除掉,再从别人相同**作系统版本的计算机中将该文件Copy过来就可以了

上一篇:DDNS,DDNS是什么?什么用途和功能!

下一篇:解决IIS不能正常打开ASP网页500错误