分析并清除web服务器上的网页木马

很多朋友都碰到过这样的现象:打开一个网站,结果页面还没显示,杀毒软件就开始报警,提示检测到木马病毒。有经验的朋友会知道这是网页恶意代码,但是自己打开的明明是正规网站,没有哪家正规网站会将病毒放在自己的网页上吧?那么是什么导致了这种现象的发生呢?其中最有可能的一个原因就是:这个网站被挂马了。

挂马这个词目前我们似乎经常能听到,那么什么是挂马呢?挂马就是黑客入侵了一些网站后,将自己编写的网页木马嵌入被黑网站的主页中,利用被黑网站的流量将自己的网页木马传播开去,以达到自己不可告人的目的。例如很多游戏网站被挂马,黑客的目的就是盗取浏览该网站玩家的游戏账号,而那些大型网站被挂马,则是为了搜集大量的肉鸡。网站被挂马不仅会让自己的网站失去信誉,丢失大量客户,也会让我们这些普通用户陷入黑客设下的陷阱,沦为黑客的肉鸡。下面就让我们来了解这种时下最流行的黑客攻击手段。

挂马的核心:木马

从“挂马”这个词中我们就可以知道,这和木马脱离不了关系。的确,挂马的目的就是将木马传播出去,挂马只是一种手段。挂马使用的木马大致可以分为两类:一类是以远程控制为目的的木马,黑客使用这种木马进行挂马攻击,其目的是为了得到大量的肉鸡,以此对某些网站实施拒绝服务攻击或达到其他目的(目前绝大多数实施拒绝服务攻击的傀儡计算机都是挂马攻击的受害者)。另一类是键盘记录木马,我们通常称其为盗号木马,其目的不言而喻,都是冲着我们的游戏帐号或者银行帐号来的。目前挂马所使用的木马多数属于后者。

木马的免杀伎俩

作为挂马所用的木马,其隐蔽性一定要高,这样就可以让用户在不知不觉中运行木马,也可以让挂马的页面存活更多的时间。黑客为了让木马躲避杀毒软件的查杀,使用的伎俩很多。通常使用的方法有:

加壳处理:关于壳的概念我们曾经介绍过,就是为了让别人无法修改编译好的程序文件,同时压缩程序体积。木马经过加壳这一道工序后就有可能逃过杀毒软件的查杀,这也是为什么我们装了杀毒软件还会感染老病毒的原因。虽然目前的杀毒软件都支持对程序脱壳后再查杀,但只局限于一些比较热门的加壳程序,例如aspack、UPX等,而碰上一些经过冷门加壳程序处理后的木马时,就无能为力了。所以加壳仍是黑客比较常用的免杀伎俩之一。

冷门的加壳程序

修改特征码:杀毒软件是根据病毒特征码来判定一个程序是否是病毒的。杀毒软件在对程序进行检测时,如果在程序中发现了病毒特征码,就将该程序判定为病毒。黑客当然也明白这个道理,于是他们会修改木马中被定为特征码的部分代码,将其加密或使用汇编指令将其跳转,这样杀毒软件就无法在木马中找到病毒特征码,自然也就不会将其判定为病毒了。

虽然这两种方法都可以躲过杀毒软件的查杀,但是我们还是有办法阻止木马运行的,具体方法将在防范部分讲到。那么木马是如何“挂”在网站上的呢?这里我们以“灰鸽子”木马为例,演示一下黑客挂马的过程。演示用的“灰鸽子”木马已经经过免杀处理,杀毒软件无法查杀。

潜伏的攻击者:网页木马

为什么我们一打开网页就会运行木马程序,木马又是如何“挂”在网站上的呢?这就要涉及“网页木马”这个概念。 网页木马就是将木马和网页结合在一起,打开网页的同时也会运行木马。最初的网页木马原理是利用IE浏览器的ActiveX控件,运行网页木马后会弹出一个控件下载提示,只有点击确认后才会运行其中的木马。这种网页木马在当时网络安全意识普遍不高的情况下还是有一点使用价值的,但是其缺点是显而易见的,就是会出现ActiveX控件下载提示。当然现在很少会有人去点击那莫名其妙的ActiveX控件下载确认窗口。

在这种情况下,新的网页木马诞生了。这类网页木马通常利用了IE浏览器的漏洞,在运行的时候没有丝毫提示,因此隐蔽性极高。可以说,正是IE浏览器层出不穷的漏洞造成了如今网页木马横行的网络。例如最近的IE浏览器漏洞MS06-014,就可以利用来制作一个绝对隐蔽的网页木马。下面让我们看看利用MS06-014制作网页木马的过程。

网页木马当然得有木马程序,这里我们使用上文中提到的“灰鸽子”木马。然后我们要下载一个MS06-014网页木马生成器。接着还要一个网页空间,三者准备完毕后,就可以开始测试了。

生成网页木马

首先将木马程序上传到网页空间中。运行“MS06-014木马生成器”,在“木马地址”中填入已经上传到空间中的木马网址,并勾选下方的“是否隐藏源码”选项。这个选项的作用是当网页木马运行后,会自动清空网页源文件,用户即使起了疑心也无法找到痕迹。当然清空的是用户打开的源文件,而网页木马却不受影响。点击“生成网马”按钮即可在程序的同目录生成一个名为muma.htm的网页木马。

配置网页木马继续进行网页木马的配置,在“欲加密的网页”中浏览选中生成的网页木马。网页木马在运行时会利用IE的漏洞,其中肯定存在漏洞利用代码,这些代码会被杀毒软件检测出来,因此要想隐蔽地运行网页木马,加密木马程序还不够,还需对网页木马进行加密。“MS06-014木马生成器”的“加密方式”中提供了四种网页的加密方式,分别是:空字符加密、转义字符加密、Escape加密和拆分特征码。这里我们使用“转义字符加密”加密方式,选中“转义字符加密”选项后点击“加密”按钮,免杀的网页木马就生成了。将该加密过的网页木马上传到网页空间中即可。

寻找缺陷网站,写入网页木马

网页木马准备完毕,就等着寻找挂马的目标网站了。此时黑客会到处搜索,寻找有脚本缺陷的网站程序,找到后利用网站程序的漏洞入侵网站,并得到网站的一个webshell。这时我们可以编辑网站首页的内容,将挂马的代码插入即可。代码为:<iframe src="/muma.htm"; width="0" height="0" frameborder="0"></iframe>,src参数后面的是网页木马的地址。当我们打开这个网站的首页后,会弹出网页木马的页面,这个页面我们是无法看到的,因为我们在代码中设置了弹出页面的窗口长宽各为0。此时木马也已经悄悄下载到本机并运行了。我们可以看到,网站的首页显示正常,杀毒软件并没有任何反应,而木马却已经运行了,可见木马的隐蔽性很高,危害也相当严重。

“挂马”攻击已经成为目前最流行的攻击方式,面对数量庞大的“挂马”网站,我们该如何防御呢?作为一名网站站长,我们又如何知道自己的网站被人挂马了呢?站长防范:如果你是一名站长,可以对网站首页以及其他主要页面的源代码进行检查,如用记事本打开这些页面后,以“<iframe>”为关键字进行搜索,找到后可以查看是否是挂马代码。不过碰上有经验的黑客,会编写一段代码将整句挂马代码进行加密,这样我们就很难找到网页中的挂马代码。这时,我们可以采用“掘马”-北京智恒联盟公司出品的一个专门针对网页木马代码检测的一个系统,可以帮助解决代码量较大,网页木马存在形式多样检查困难的问题。系统定期升级可以检测1000多种网页木马,检测定位非常准!

普通用户防范:普通用户关心的自然是如何防范“挂马”攻击。既然杀毒软件在网页木马面前成了“睁眼瞎”,而我们又无法感知网站是否被“挂马”。在这种情况下,我们岂不是任人宰割?我们已经知道网页木马的运行原理利用了IE浏览器的漏洞,因此只要我们及时更新系统补丁就可以让网页木马失效了。开启系统“自动更新”的方法为:右键点击“我的电脑”,选择“属性”,切换到“自动更新”标签,选中其中的“自动(推荐)”即可。

时间: 2024-09-13 21:21:42

分析并清除web服务器上的网页木马的相关文章

由于Web服务器上的“ISAPI 和 CGI 限制”列表设置

Win7的IIS配置asp.net出现"由于 Web 服务器上的"ISAPI 和 CGI 限制"列表设置,无法提供您请求的页面." 点击,[应用程序池]上面的IIS根目录,然后选择右边的[ISAPI 和 CGI 限制设置],最后,所有选项都设置成启动就行了! 作者:csdn博客 贝壳 返回栏目页:http://www.bianceng.cnhttp://www.bianceng.cn/Servers/web/

让HTML和JSP页面不缓存从Web服务器上重新获取页面

当点击后退按钮时,默认情况下浏览器不是从Web服务器上重新获取页面,而是从浏览器缓存中载入页面,那么怎么才能让HTML和JSP页面不缓存呢?下面为大家介绍下比较详细的解决方法   用户退出后,如果点击浏览器上的后退按钮,Web应用将不能正确保护受保护的页面--在Session销毁后(用户退出)受保护的JSP页重新在浏览器中显示出来. 然而,如果用户点击返回页面上的任何链接,Web应用将会跳转到登陆页面并提示Session has ended.Please log in. 上述问题的根源在于大部分

Ext的API文档查看——需要部署到web服务器上

  出现问题: 下载了ext的sdk,打开docs/index.html开始学习,但是发现点开index.html,页面的树形一直在加载,出不来我们需要的内容.   解决方法: 因为打开帮助文档用到了Ajax,所以需要部署到web服务器上.可以放在Tomcat上,或者IIS上.我们以tomcat为例. 第一步:下载ext.http://dev.sencha.com/deploy/ext-3.2.0.zip. 第二步:新建Java Web项目,将下载的ext整个文件夹放在WebRoot下面. 第三

vs2012 sp net-VS2012打开项目 提示Asp.net4.0未在web服务器上注册

问题描述 VS2012打开项目 提示Asp.net4.0未在web服务器上注册 如上图 请问这个问题怎么解决 解决方案 运行下aspnet_regiis.exehttps://msdn.microsoft.com/zh-cn/library/k6h9cz8h(VS.80).aspx 解决方案二: http://www.cnblogs.com/lvxiouzi/p/3511446.html

wi-fi-如何通过局域网内笔记本发射的WiFi连接到该局域网内的一台web服务器上

问题描述 如何通过局域网内笔记本发射的WiFi连接到该局域网内的一台web服务器上 单位的局域网内,怎么通过手机连接的局域网内笔记本发射的WiF,连接到另一个局域网内的一台web服务器上,笔记本所在的局域网与web服务器的局域网是用两个不同的路由器. 我的笔记本是直接可以ping通那台服务器的,但是怎样才能从我笔记本发射的wifi用手机连接上那台服务器呢? 解决方案 建议你将笔记本(可以ping通那台服务器)上的WIFI加载为WIFI AP端(好像360里有这样的软件),这样你的手机连接到这个笔

HTTP 错误 404.2 - Not Found 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面

原文 http://blog.csdn.net/ldl22847/article/details/6317306 详细错误:HTTP 错误 404.2 - Not Found. 由于 Web 服务器上的"ISAPI 和 CGI 限制"列表设置,无法提供您请求的页面. 出现环境:win7 + IIS7.0 解决办法:IIS的根节点->右侧"ISAPI和CGI限制"->把禁止的DotNet版本项设置为允许,即可~  

visual studio 2010-vs2010打开项目提示asp.net4尚未在Web服务器上注册,可能是哪里的问题?

问题描述 vs2010打开项目提示asp.net4尚未在Web服务器上注册,可能是哪里的问题? vs2010打开web项目提示asp.net4尚未在Web服务器上注册,但是我用vs2015打开就没问题,可能是哪里的问题? 解决方案 运行 aspnet_regiis -i 注册下 解决方案二: http://wenku.baidu.com/link?url=YWCDRqX_ny3mcq-z9X8NBqeEj33xIhpng7tmEk3N4nxH2K55dkDo_c8yzkloQ8xT6KPmMuu

《HTML与CSS入门经典(第8版)》——2.3 理解Web服务器上放置文件的位置

2.3 理解Web服务器上放置文件的位置 维护Web内容的一个重要方面是确定组织内容的方法--不仅是为了用户寻找,也为了你在服务器上的维护.将文件放到指定目录中将帮助你管理这些文件. 在你的Web服务器上命名和管理目录,并且开发文件维护规则,这完全取决于你.但是,维护一个精心组织的服务器使你在长期中更加有效地管理它的内容. 2.3.1 基本文件管理在你浏览Web时,你可能已经注意到URL随着你在网站之间浏览而变化.例如,如果你查看一个公司的网站并且单击图形化导航进入公司的产品或者服务,URL可能

无法在WEB服务器上启动调试.调试器无法连接到远程计算机

问题描述 详情请查看附件;我在本地将localhost对应到一个具体的网址上.这样调试的时候总是报无法在WEB服务器上启动调试?其它的像IIS一样的配置都配置好了.请高手出招! 解决方案 解决方案二:生成release版本,并且将网站放到虚拟目录或者网站目录下.解决方案三:冒泡IIS7?解决方案四:在IIS中新建个站点,把项目放进去解决方案五:手动点"调试"=>"附加到进程"=>"w3wp.exe(类型:T-SQL,托管,X86)"解