木马如何检测和删除系统中的木马

木马检测  时间:2021-01-09  阅读:()

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

如何检测和删除系统中的木马

检测和删除系统中的木马( Trojan Horse)

一、 木马( Trojan Horse)介绍

木马全称为特洛伊木马( Trojan Horse,英文则简称为Trojan) 。此词语来源于古希腊的神话故事,传说希腊人围攻特洛伊城, 久久不能得手。后来想出了一个木马计,让士兵藏匿于巨大的木马中。大部队假装撤退而将木马摈弃于特洛伊城下,让敌人将其作为战利品拖入城内。木马内的士兵则乘夜晚敌人庆祝胜利、 放松警惕的时候从木马中爬出来, 与城外的部队里应外合而攻下了特洛伊城。

在计算机安全学中,特洛伊木马是指一种计算机程序,表面上或实际上有某种有用的功能,而含有隐藏的能够控制用户计算机系统、 危害系统安全的功能, 可能造成用户资料的泄漏、 破坏或整个系统的崩溃。在一定程度上,木马也能够称为是计算机病毒。

由于很多用户对计算机安全问题了解不多, 因此并不知道自己的计算机是否中了木马或者如何删除木马。虽然现在市面上有很多新版杀毒软件都称能够自动清除木马病毒,但它们并不能防范新出现的木马病毒(哪怕宣传上称有查杀未知病毒的功能) 。而且实际的使用效果也并不理想。比如用某些杀毒软件卸载木马后, 系统不能正常工作,或根本发现不了经过特殊处理的木马程序。本人就测试过一些经编程人员改装过的著名木马程序,新的查杀毒软件是连检查都检测不到,更不用说要删除它了(哪怕是使用的是的

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

病毒库) 。因此最关键的还是要知道特洛伊木马的工作原理, 由其原理着手自己来检测木马和删除木马。用手工的方法极易发现系统中藏匿的特洛伊木马,再根据其藏匿的方式对其进行删除。

二、 木马工作的原理

在Windows系统中,木马一般作为一个网络服务程序在种了木马的机器后台运行,监听本机一些特定端口,这个端口号多数比较大( 5000以上,但也有部分是5000以下的) 。当该木马相应的客户端程序在此端口上请求连接时, 它会与客户程序建立一TCP 连接,从而被客户端远程控制。

既然是木马, 当然不会那么容易让你看出破绽,对于程序设计人员来说,要隐藏自己所设计的窗口程序,主要途径有:在任务栏中将窗口隐藏,这个只要把Form的Visible属性调整为False, ShowInTaskBar也设为False。那么程序运行时就不会出现在任务栏中了。如果要在任务管理器中隐身, 只要将程序调整为系统服务程序就能够了。

好了,现在我们对木马的运行有了大致了解。让我们从其运行原理着手来看看它藏在哪。既然要作为后台的网络服务器运行,那么它就要乘计算机刚开机的时候得到运行,进而常驻内存中。想一想, Windows系统刚启动的时候会经过什么项目装入而运行一些程序呢?你可能会想到”开始->程序->启动”中的项目! 没错,这是Windows启动时要运行的东西,但要是木马服务器程序明显地放在这就不叫木马了。

木马基本上采用了Windows系统启动时自动加载应用程序的方法,包括有win. ini、system. ini和注册表等。

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

在win. ini文件中, [WINDOWS]下面, ” run=”和” load=”行是Windows启动时要自动加载运行的程序项目,木马可能会在这现出原形。必须要仔细观察它们, 一般情况下, 它们的等号后面什么都没有,如果发现后面跟有路径与文件名不是你熟悉的或以前没有见到过的启动文件项目,那么你的计算机就可能中上木马了。当然你也得看清楚,因为好多木马还经过其容易混淆的文件名来愚弄用户。如AOL Trojan, 它把自身伪装成command. exe文件,如果不注意可能不会发现它,而误认它为正常的系统启动文件项。

在system. ini文件中, [BOOT]下面有个” shell=Explorer. exe”项。正确的表述方法就是这样。如果等号后面不但仅是explorer. exe,而是” shell=Explorer.exe程序名” ,那么后面跟着的那个程序就是木马程序, 明摆着你已经中了木马。现在有些木马还将explorer. exe文件与其进行绑定成为一个文件,这样的话,这里看起来还是正常的,无法瞧出破绽。

隐蔽性强的木马都在注册表中作文章, 因为注册表本身就非常庞大、 众多的启动项目及易掩人耳目。

HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnceEx HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunService s

HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunService

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。sOnce

上面这些主键下面的启动项目都能够成为木马的容身之处。如果是Windows NT,那还得注意HKEY-LOCAL-MACHINE\\Software\\SAM下的东西,经过regedit等注册表编辑工具查看SAM主键, 里面下应该是空的。

木马驻留计算机以后,还得要有客户端程序来控制才能够进行相应的”黑箱”操作。要客户端要与木马服务器端进行通信就必须得建立一连接(一般为TCP连接) ,经过相应的程序或工具都能够检测到这些非法网络连接的存在。具体如何检测,在第三部分有详细介绍

三、 检测木马的存在

知道木马启动运行、 工作的原理,我们就能够着手来看看自己的计算机有没有木马存在了。

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

1、 查看system. ini文件

选中” System. ini”标签,展开[boot]目录,查看” shell=”这行,正常为” shell=Explorer. exe”

,如果不是这样,就可能中了木马了。下图所示为正常时的情况:

2、 查看win. ini文件

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

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

3、 查看启动组

再看看启动标签中的启动项目,有没有什么非正常项目?要是有象netbus、netspy、 bo等关键词,

极有可能就是木马了。本人一般都将启动组中的项目保持在比较精简的状态,不需要或无大用途的项目都

屏蔽掉了

4、 查看注册表

由”开始-运行” ,输入regedit,确定就能够运行注册表编辑器。再展开至:”HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRun”目录下,查看键值中有没有自己

不熟悉的自动启动文件项目, 比如netbus、 netspy、 netserver等的单词。注意,有的木马程序生成的

服务器程序文件很像系统自身的文件,想由此伪装蒙混过关。比如Acid Battery木马,它会在注册表项

”HKEY-LOCAL-MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun”下加入Explorer=” CWINDOWSexpiorer. exe” ,木马服务器程序与系统自身的真正的Explorer 之间只有一个字母

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

的差别!

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

HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnceEx HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunService s

HKEY-LOCAL-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\RunService sOnc

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

当然在注册表中还有很多地方都能够隐藏木马程序,上面这些主键是木马比较常见的隐身之处。除此之外,象HKEY-CURRENT-USER\\

Software\\Microsoft\\Windows\\CurrentVersion\\Run、

HKEY-USERS\\****\\Software\\ Microsoft\\Windows\\CurrentVersion\\Run的目录下都有可能成为木马的藏身之处。最好的办法就是在HKEY-LOCAL

-MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run或其它主键下面找到木马程序的文件名,再经过其文件名对整个注册表进行全面搜索就知道它有几个藏身的地方了。

如果有留意,注册表各个主键下都会有个叫” (默认) ”名称的注册项,而且数据

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

显示为” (未设置键值) ” ,也就是空的。这是正常现象。如果发现这个默认项被替换了,那么替换它的就是木马了。

4、 其它方法

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

如果怀疑你现在正在被木马控制,那么不要慌张地去拔了网线或抽了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分钟以上)没有运行任何

网络冲浪软件,也没有进行过任何网络操作, 比如浏览网页,收、 发信等。不然容易混淆对结果的判断。

四、 删除木马

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

资料内容仅供您学习参考如有不当或者侵权请联系改正或者删除。

方法来删除它。

1、 由木马的客户端程序

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

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

2、 手工

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

用msconfig打开系统配置实用程序,对win. ini、 system. ini和启动项目进行编

Linode($5/月),新用户注册送100美元,11个数据中心云服务器

关于Linode,这是一家运营超过18年的VPS云主机商家,产品支持随时删除(按小时计费),可选包括美国、英国、新加坡、日本、印度、加拿大、德国等全球十多个数据中心,最低每月费用5美元($0.0075/小时)起。目前,注册Linode的新用户添加付款方式后可以获得100美元赠送,有效期为60天,让更多新朋友可以体验Linode的产品和服务。Linode的云主机产品分为几类,下面分别列出几款套餐配置...

#推荐# cmivps:全场7折,香港不限流量VPS,支持Windows系统

cmivps香港VPS带来了3个新消息:(1)双向流量改为单向流量,相当于流量间接扩大一倍;(2)Hong Kong 2T、Hong Kong 3T、Hong Kong 无限流量,这三款VPS开始支持Windows系统,如果需要中文版Windows系统请下单付款完成之后发ticket要求官方更改即可;(3)全场7折年付、8折月付优惠,优惠码有效期一个月!官方网站:https://www.cmivp...

域名注册需要哪些条件(新手注册域名考虑的问题)

今天下午遇到一个网友聊到他昨天新注册的一个域名,今天在去使用的时候发现域名居然不见。开始怀疑他昨天是否付款扣费,以及是否有实名认证过,毕竟我们在国内域名注册平台注册域名是需要实名认证的,大概3-5天内如果不验证那是不可以使用的。但是如果注册完毕的域名找不到那也是奇怪。同时我也有怀疑他是不是忘记记错账户。毕竟我们有很多朋友在某个商家注册很多账户,有时候自己都忘记是用哪个账户的。但是我们去找账户也不办...

木马检测为你推荐
买虚拟主机购买虚拟主机时,应该注意点什么呢,...?.net虚拟主机哪里有支持net4.0的虚拟主机独立ip主机独立IP主机和CDN主机的详细区别?租服务器我想租服务器,请问会提供哪些服务?me域名.me域名和com的价值对比,懂的告诉我呀美国网站空间论坛选择空间可以选美国网站空间吗?asp网站空间什么是ASP空间?深圳网站空间菜鸟问:网站空间如何选择,与空间的基本知识?手机网站空间谁有上手机网站刷空间人气的网址100m虚拟主机100元虚拟主机
最新代理服务器ip smartvps qq云存储 sharktech 紫田 搜狗抢票助手 网站被封 主机合租 北京主机 165邮箱 建立邮箱 seednet 699美元 天翼云盘 上海电信测速 中国linux 万网主机 电信宽带测速软件 服务器防御 镇江高防服务器 更多