服务器中木马
服务器被挂马的原因很多,在解决之前,首先要弄清楚被挂马的类型
A) 首先按服务器上的文件是否被修改,分成ARP中毒,及非ARP中毒, ARP中毒是目前最普遍的挂马现象碰到挂马首先应该检查这个
ARP挂马现象: IE访问时,站点被挂马了,但是到服务器上查看实际的文件时,发现服务器上的文件并没有被修改
ARP挂马的解决方法: 及时与机房联系, 是由于机房中跟你同一个机柜的服务器中有一台服务器中了ARP病毒, 机房检查出该机器之后,把该机器关掉,即可恢复正常
B) 在排除了ARP挂马的可能性之后, 如果你的服务器上网站程序确实被修改了, 根据被挂马网站的数量分成以下几种类型:
(1) 个别网站被挂马
现象: 只有一个或两个网站被挂马,其它网站均没有问题
解决: 一般是网站本身程序有问题 可以通知客户自行解决,不属于IDC提供商的责任范围
如果想要帮客户解决,可以先检查一下看客户网站上是否存在WEB上传程序, HTML在线编程程序,在线上传的程序,大部是这类程序有问题
如果不需要用到这类程序,可以设置一下站点主目录的权限, 把写权限去掉,留下只读与执行即可
(2) 同一类型的网站被挂码
现象: 数个网站被挂马,且被挂马的网站内容是同一类型的网站,比如使用同一种论坛程序,同一种在线上传程序,同一种商城等
解决: 大部分是由于这类论坛或商城程序有漏洞 可以建议升级一下相关的程序,或者同方法 (1)一样,在WinIIS控制面板里把站点主目录的写权限去掉,只留下读与执行权限
(3) 整台服务器大部分网站都被挂马了
现象: 服务器在大部分网站都被挂马了, 这种多半是由于服务器安全整体安全问题
解决: 一般需要从以下方面检查服务器的安全且查出问题之后, 如果没有十足把握, 一般建议需要重装服务器,才能根除
检查磁盘的权限设置是否有问题,特别的C盘的权限 其它盘是否有特别上不必要的权限,一般建议其它盘符及d:\www\web\目录只留下administrators及system权限就行了,不要留下任何其它用户的权限
检查serv-u没有设置管理密码
检查MSSQL的SA密码是否过于简单或空密码
检查系统的启动项,看是否有不必要的程序启动
检查任务管理器,看是否有可疑的进程
检查系统的服务,看是否有可疑的服务启动
检测和删除系统中的木马教程
一、木马(Trojan Horse)介绍
木马全称为特洛伊木马(Trojan Horse,英文则简称为Trojan)。此词语来源于古希腊的神话故事,传说希腊人围攻特洛伊城,久久不能得手。后来想出了一个木马计,让士兵藏匿于巨大的木马中。大部队假装撤退而将木马摈弃于特洛伊城下,让敌人将其作为战利品拖入城内。木马内的士兵则乘夜晚敌人庆祝胜利、放松警惕的时候从木马中爬出来,与城外的部队里应外合而攻下了特洛伊城。
在计算机安全学中,特洛伊木马是指一种计算机程序,表面上或实际上有某种有用的功能,而含有隐藏的可以控制用户计算机系统、危害系统安全的功能,可能造成用户资料的泄漏、破坏或整个系统的崩溃。在一定程度上,木马也可以称为是计算机病毒。
由于很多用户对计算机安全问题了解不多,所以并不知道自己的计算机是否中了木马或者如何删除木马。虽然现在市面上有很多新版杀毒软件都称可以自动清除木马病毒,但它们并不能防范新出现的木马病毒(哪怕宣传上称有查杀未知病毒的功能)。而且实际的使用效果也并不理想。比如用某些杀毒软件卸载木马后,系统不能正常工作,或根本发现不了经过特殊处理的木马程序。本人就测试过一些经编程人员改装过的著名木马程序,新的查杀毒软件是连检查都检测不到,更不用说要删除它了(哪怕是使用的是的病毒库)。因此最关键的还是要知道特洛伊木马的工作原理,由其原理着手自己来检测木马和删除木马。用手工的方法极易发现系统中藏匿的特洛伊木马,再根据其藏匿的方式对其进行删除。
二、木马工作的原理
在Windows系统中,木马一般作为一个网络服务程序在种了木马的机器后台运行,监听本机一些特定端口,这个端口号多数比较大(5000以上,但也有部分是5000以下的)。当该木马相应的客户端程序在此端口上请求连接时,它会与客户程序建立一TCP连接,从而被客户端远程控制。
既然是木马,当然不会那么容易让你看出破绽,对于程序设计人员来说,要隐藏自己所设计的窗口程序,主要途径有:在任务栏中将窗口隐藏,这个只要把 Form的Visible属性调整为False,ShowInTaskBar也设为False。那么程序运行时就不会出现在任务栏中了。如果要在任务管理器中隐身,只要将程序调整为系统服务程序就可以了。
好了,现在我们对木马的运行有了大体了解。让我们从其运行原理着手来看看它藏在哪。既然要作为后台的网络服务器运行,那么它就要乘计算机刚开机的时候得到运行,进而常驻内存中。想一想,Windows系统刚启动的时候会通过什么项目装入而运行一些程序呢?你可能会想到“开始->程序->启动”中的项目!没错,这是Windows启动时要运行的东西,但要是木马服务器程序明显地放在这就不叫木马了。
木马基本上采用了Windows系统启动时自动加载应用程序的方法,包括有winini、systemini和注册表等。
在winini文件中,[WINDOWS]下面,“run=”和“load=”行是Windows启动时要自动加载运行的程序项目,木马可能会在这现出原形。必须要仔细观察它们,一般情况下,它们的等号后面什么都没有,如果发现后面跟有路径与文件名不是你熟悉的或以前没有见到过的启动文件项目,那么你的计算机就可能中上木马了。当然你也得看清楚,因为好多木马还通过其容易混淆的文件名来愚弄用户。如AOL Trojan,它把自身伪装成commandexe文件,如果不注意可能不会发现它,而误认它为正常的系统启动文件项。
在systemini文件中,[BOOT]下面有个“shell=Explorerexe”项。正确的表述方法就是这样。如果等号后面不仅仅是 explorerexe,而是“shell=Explorerexe 程序名”,那么后面跟着的那个程序就是木马程序,明摆着你已经中了木马。现在有些木马还将explorerexe文件与其进行绑定成为一个文件,这样的话,这里看起来还是正常的,无法瞧出破绽。
隐蔽性强的木马都在注册表中作文章,因为注册表本身就非常庞大、众多的启动项目及易掩人耳目。
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\RunServices
HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
上面这些主键下面的启动项目都可以成为木马的容身之处。如果是Windows NT,那还得注意HKEY-LOCAL-MACHINE\Software\SAM下的东西,通过regedit等注册表编辑工具查看SAM主键,里面下应该是空的。
木马驻留计算机以后,还得要有客户端程序来控制才可以进行相应的“黑箱”操作。要客户端要与木马服务器端进行通信就必须得建立一连接(一般为TCP连接),通过相应的程序或工具都可以检测到这些非法网络连接的存在。具体如何检测,在第三部分有详细介绍。
三、检测木马的存在
知道木马启动运行、工作的原理,我们就可以着手来看看自己的计算机有没有木马存在了。
首先,查看systemini、winini、启动组中的启动项目。由“开始->运行”,输入msconfig,运行Windows自带的“系统配置实用程序”。
1、查看systemini文件
选中“Systemini”标签,展开[boot]目录,查看“shell=”这行,正常为“shell=Explorerexe”
,如果不是这样,就可能中了木马了。下图所示为正常时的情况:
2、查看winini文件
选中winini标签,展开[windows]目录项,查看“run=”和“load=”行,等号后面正常应该为空
3、查看启动组
再看看启动标签中的启动项目,有没有什么非正常项目?要是有象netbus、netspy、bo等关键词,
极有可能就是木马了。本人一般都将启动组中的项目保持在比较精简的状态,不需要或无大用途的项目都
屏蔽掉了
4、查看注册表
由“开始-运行”,输入regedit,确定就可以运行注册表编辑器。再展开至:
“HKEY-LOCAL-MACHINESoftwareMicrosoftWindowsCurrentVersionRun”目录下,查看键值中有没有自己
不熟悉的自动启动文件项目,比如netbus、netspy、netserver等的单词。注意,有的木马程序生成的
服务器程序文件很像系统自身的文件,想由此伪装蒙混过关。比如Acid Battery木马,它会在注册表项
“HKEY-LOCAL-MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun”下加入
Explorer=“CWINDOWSexpiorerexe”,木马服务器程序与系统自身的真正的Explorer之间只有一个字母
的差别!
通过类似的方法对下列各个主键下面的键值进行检查:
HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
如果操作系统是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、由木马的客户端程序
由先前在winini、systemini和注册表中查找到的可疑文件名判断木马的名字和版本。比如“netbus”、“netspy”等,很显然对应的木马就是NETBUS和NETSPY。从网上找到其相应的客户端程序,下载并运行该程序,在客户程序对应位置填入本地计算机地址: 127001和端口号,就可以与木马程序建立连接。再由客户端的卸除木马服务器的功能来卸除木马。端口号可由“netstat -a”命令查出来。
这是最容易,相对来说也比较彻底载除木马的方法。不过也存在一些弊端,如果木马文件名给另外改了名字,就无法通过这些特征来判断到底是什么木马。如果木马被设置了密码,既使客户端程序可以连接的上,没有密码也登陆不进本地计算机。当然要是你知道该木马的通用密码,那就另当别论了。还有,要是该木马的客户端程序没有提供卸载木马的功能,那么该方法就没什么用了。当然,现在多数木马客户端程序都是有这个功能的。
2、手工
不知道中的是什么木马、无登陆的密码、找不到其相应的客户端程序、,那我们就手工慢慢来删除这该死的木马吧。
用msconfig打开系统配置实用程序,对winini、systemini和启动项目进行编辑。屏蔽掉非法启动项。如在winini文件中,将将[WINDOWS]下面的“run=xxx”或“load=xxx”更改为“run=”和“load=”;编辑systemini文件,将 [BOOT]下面的“shell=xxx”,更改为:“shell=Explorerexe”。
转贴于 华夏黑客同盟 http://www77169org
用regedit打开注册表编辑器,对注册表进行编辑。先由上面的方法找到木马的程序名,再在整个注册表中搜索,并删除所有木马项目。由查找到的木马程序注册项,分析木马文件在硬盘中的位置(多在C:\WINDOWS和C:\WINDOWS\COMMAND目录下)。启动到纯MS-DOS状态(而不是在Windows环境中开个MS-DOS窗口),用del命令将木马文件删除。如果木马文件是系统、隐藏或只读文件,还得通过“attrib -s -h -r”将对应文件的属性改变,才可以删除。
为保险起见,重新启动以后再由上面各种检测木马的方法对系统进行检查,以确保木马的确被删除了。
目前也有一些木马是将自身的程序与Windows的系统程序进行了绑定(也就是感染了系统文件)。比如常用到的Explorerexe,只要 Explorerexe一得到运行,木马也就启动了。这种木马可以感染可执行文件,那就更象病毒了。由手工删除文件的方法处理木马后,一运行 Explorerexe,木马又得以复生!这时要删除木马就得连Explorerexe文件也给删除掉,再从别人相同操作系统版本的计算机中将该文件 Copy过来就可以了。
五、结束语
Internet上每天都有新的木马冒出来,所采取的隐蔽措施也是五花八门。在信息社会里,计算机用户对自己的资料进行保密、防止泄漏也变得越来越重要。防范木马袭击也只是提高计算机安全性的一个方面。技术的发展,本文所讲述的检测、删除木马方法也总有一天会失效,最主要还是要靠用户提高警惕,防范所有的不安全事件于未然。
典型案例一:
我的机器已中了木马病毒TrojanTRCmIRCf
是在c:\WINNT\system32\sy5tem文件中,我想要把文件删掉,可是提示为:源文件正在被使用,瑞星杀毒软件又不能杀掉,我的系统是win2oooprofessinal,并不能运行msconfig命令,请教:该怎么办?
回复:
从Windows XP中剥离的Msconfig程序完全可以在Windows 2000中使用。顺便提供 pchome下载点。
把它COPY 到Win2000的WinntSystem目录下,然后直接运行。
程序首先会弹出一个出错的消息框,提示找不到以下几个系统文件:Configsys、Autoexecbat、Systemini 及Winini,“忽略”它,点击“确定”之后就会看到 Msconfig 程序窗口。
参考文献:http://wwwenetcomcn/article
请尝试使用安全软件进行扫描,设备中存在木马一般是不良的上网习惯或者下载陌生的软件导致的。设备中存在木马一般的表现是自动下载其他垃圾软件、系统卡顿或者出现延迟、出现有遮挡的广告等问题。
若怀疑手机中存在木马或者病毒,请尝试按照以下步骤请尝试安装一款安全软件(例如:手机管家等)。以手机管家为例,打开手机管家,点击主界面上的一键体检即可自动检测手机中存在的问题,并且给出处理建议,点击一键清除即可删除病毒程序。
若怀疑电脑中存在木马,请尝试下载一款安全软件(例如:电脑管家等)进行全盘扫描和清理即可。也可以尝试下载木马专杀程序对电脑进行清理。若依然无法处理请尝试将硬盘全部格式化然后重新安装系统。
以下从几个方面在说明Linux系统环境安排配置防范和木马后门查杀的方法:
一、Web Server(以Nginx为例)
1、为防止跨站感染,将虚拟主机目录隔离(可以直接利用fpm建立多个程序池达到隔离效果)
2、上传目录、include类的库文件目录要禁止代码执行(Nginx正则过滤)
3、path_info漏洞修正:
在nginx配置文件中增加:
if ($request_filename ~ ()\php) {
set $php_url $1;
}
if (!-e $php_urlphp) {
return 404;
}
4、重新编译Web Server,隐藏Server信息
5、打开相关级别的日志,追踪可疑请求,请求者IP等相关信息。
二改变目录和文件属性,禁止写入
find -type f -name \php -exec chmod 444 {} \;
find -type d -exec chmod 555 {} \;
注:当然要排除上传目录、缓存目录等;
同时最好禁止chmod函数,攻击者可通过chmod来修改文件只读属性再修改文件!
三PHP配置
修改phpini配置文件,禁用危险函数:
disable_funcions = dl,eval,exec,passthru,system,popen,shell_exec,proc_open,proc_terminate,curl_exec,curl_multi_exec,show_source,touch,escapeshellcmd,escapeshellarg
四MySQL数据库账号安全:
禁止mysql用户外部链接,程序不要使用root账号,最好单独建立一个有限权限的账号专门用于Web程序。
五查杀木马、后门
grep -r –include=php ‘[^a-z]eval($_POST’ > greptxt
grep -r –include=php ‘file_put_contents($_POST\[\]);’ > greptxt
把搜索结果写入文件,下载下来慢慢分析,其他特征木马、后门类似。有必要的话可对全站所有文件来一次特征查找,上传肯定有也捆绑的,来次大清洗。
查找近2天被修改过的文件:
find -mtime -2 -type f -name \php
注意:攻击者可能会通过touch函数来修改文件时间属性来避过这种查找,所以touch必须禁止
六及时给Linux系统和Web程序打补丁,堵上漏洞
网速慢的原因有很多,可能是病毒木马、p2p下载软件、共享上网、宽带线路老化、不同网络环境等。本文将为大家介绍网速慢的解决办法。
0条评论