分析并清除web服务器上的网页木马(2)
潜伏的攻击者:网页木马
为什么我们一打开网页就会运行木马程序,木马又是如何“挂”在网站上的呢?这就要涉及“网页木马”这个概念。 网页木马就是将木马和网页结合在一起,打开网页的同时也会运行木马。最初的网页木马原理是利用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浏览器的漏洞,因此只要我们及时更新系统补丁就可以让网页木马失效了。开启系统“自动更新”的方法为:右键点击“我的电脑”,选择“属性”,切换到“自动更新”标签,选中其中的“自动(推荐)”即可。