扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
不完全统计,90%的网站都被挂过马,挂马是指在获取网站或者网站服务器的部分或者全部权限后,在网页文件中插入一段恶意代码,这些恶意代码主要是一些包括IE等漏洞利用代码,用户访问被挂马的页面时,如果系统没有更新恶意代码中利用的漏洞补丁,则会执行恶意代码程序,进行盗号等危险超过。目前挂马主要是为了商业利益,有的挂马是为了赚取流量,有的是为了盗取游戏等账号,也有的是为了好玩,不管是处于那种目的,对于访问被挂马的网站来说都是一种潜在的威胁,影响运营网站公司形象。
当一个网站运营很长时间后,网站文件会非常多,手工查看网页文件代码非常困难,杀毒软件仅仅对恶意代码进行查杀,对网页木马以及挂马程序不一定全部查杀,本文就如何利用一些安全检测工具软件来检测和清除网站木马方面进行探讨,使用本文提及的工具可以很轻松的检测网站是否被挂马。
(一)检测挂马页面
1.安装urlsnooper 软件
Urlsnooper是一款URL嗅探工具,其官方主页地址为:http://www.donationcoder.com/urlsnooper,目前已经不提供免费下载了,可以到http://download.pchome.net/detail-11525.html下载该软件。安装非常简单,按照提示进行安装即可。第一次使用时需要程序会自动检查网卡,查看能否正常连接网络,设置正确无误后,应该出现如图1所示的画面。
图1 安装正确后的界面
2.对网站进行侦测
在Urlsnooper中的“Protocol Filter”中选择“Show All”,然后单击“Sniff Network”按钮开始监听网络。接着使用IE浏览器打开需要进行检测木马的网站,Urlsnooper会自动抓取网站中的所有连接,在Index中按照五位数字序号进行排列,如图2所示。
图2 监听结果
说明:
在侦测结果中可能包含的连接地址非常多,这个时候就需要进行排查,可以选中每一个记录,Urlsnooper会在下方中显示详细的监听结果,如图2所示,就发现存在一段挂马代码:
在百度搜索中对其进行搜索,如图3所示,有30多项搜索结果,从查询结果可以辅佐证明该段代码为挂马代码。
图3 搜索结果
说明:要善于运用网络搜索引擎,通过搜索可以知道目前关于该问题的描述和解决方法等。
3.对地址进行解码
该地址采用了一种编码,我对常用的这种编码值进行了整理,如下表所示,从中可以找出该代码中的真实地址为http://ave1.cn。
表1 编码对应表
原值解码前的值原值解码前的值原值解码前的值
backspace%08I%49u %75
tab%09J%4Av %76
linefeed%0AK%4Bw%77
creturn%0DL%4Cx%78
space%20M%4Dy%79
!%21N%4Ez %7A
"%22O%4F{ %7B
#%23P%50| %7C
$%24Q%51}%7D
%%25R%52
&%26S%53
'%27T%54
(%28U%55
)%29V%56
*%2AW%57
+%2BX%58
,%2CY%59
-%2DZ%5A
.%2E[%5B
/%2F\%5C
0%30]%5D
1%31^%5E
2%32_%5F
3%33`%60
4%34a%61
5%35b%62
6%36c%63
7%37d%64
8%38e%65
9%39f%66
:%3Ag%67
;%3Bh%68
< %3Ci%69
=%3Dj%6A
> %3Ek%6B
?%3Fl%6C
@%40m%6D
A%41n%6E
B%42o%6F
C%43p%70
D%44q%71
E%45r%72
F%46s%73
G%47t%74
H%48u%75
4.获取该网站相关内容
可以使用Flashget的资源管理器去获取该网站的内容,如图4所示,打开Flashget下载工具,单击“工具”-“站点资源探索器”,打开站点资源探索器,在地址中输入“http://ave1.cn”,然后回车即可获取该网站的一些资源,在站点资源探索器中可以直接下载看见的文件,下载到本地进行查看。
图4 使用“站点资源探索器”获取站点资源
说明:
使用“Flashget站点资源探索器”可以很方便的获取挂马者代码地址中的一些资源,这些资源可能是挂马的真实代码,透过这些代码可以知道挂马者是采用哪个漏洞,有时候还可以获取0day。
在本例中由于时间较长,挂马者已经撤销了原来的挂马程序文件,在该网站中获取的html文件没有用处,且有些文件已经不存在了,无法对原代码文件进行分析。
5.常见的挂马代码
(1)框架嵌入式网络挂马
网页木马被攻击者利用iframe语句,加载到任意网页中都可执行的挂马形式,是最早也是最有效的的一种网络挂马技术。通常的挂马代码如下:
解释:在打开插入该句代码的网页后,就也就打开了http://www.xxx.com/muma.html页面,但是由于它的长和宽都为“0”,所以很难察觉,非常具有隐蔽性。
(2)Js调用型网页挂马
js挂马是一种利用js脚本文件调用的原理进行的网页木马隐蔽挂马技术,如:黑客先制作一个.js文件,然后利用js代码调用到挂马的网页。通常代码如下:
http://www.xxx.com/gm.js就是一个js脚本文件,通过它调用和执行木马的服务端。这些js文件一般都可以通过工具生成,攻击者只需输入相关的选项就可以了。
(3)图片伪装挂马
随着防毒技术的发展,黑手段也不停地更新,图片木马技术逃避杀毒监视的新技术,攻击者将类似: http://www.xxx.com/test.htm中的木马代码植入到test.gif图片文件中,这些嵌入代码的图片都可以用工具生成,攻击者只需输入相关的选项就可以了。图片木马生成后,再利用代码调用执行,是比较新颖的一种挂马隐蔽方法,实例代码如:
注:当用户打开http://www.xxx.com/test.htm是,显示给用户的是http://sec.chinabyte.com/imagelist/2009/173/ncm8s86596cd.jpg_notfound.jpg_notfound.jpg,而http://www.xxx.com/test.htm网页代码也随之运行。
(4)网络钓鱼挂马(也称为伪装调用挂马)
网络中最常见的欺骗手段,黑客们利用人们的猎奇、贪心等心理伪装构造一个链接或者一个网页,利用社会工程学欺骗方法,引诱点击,当用户打开一个看似正常的页面时,网页代码随之运行,隐蔽性极高。这种方式往往和欺骗用户输入某些个人隐私信息,然后窃取个人隐私相关联。比如攻击者模仿腾讯公司设计了一个获取QQ币的页面,引诱输入QQ好和密码,如图5所示。等用户输入完提交后,就把这些信息发送到攻击者指定的地方,如图6。
图5 伪装QQ页面
图6 获取的QQ密码
(5)伪装挂马
高级欺骗,黑客利用IE或者Fixfox浏览器的设计缺陷制造的一种高级欺骗技术,当用户访问木马页面时地址栏显示www.sina.com或者security.ctocio.com.cn等用户信任地址,其实却打开了被挂马的页面,从而实现欺骗,示例代码如:
(二)清除网站中的恶意代码(挂马代码)
1.确定挂马文件
清除网站恶意代码首先需要知道哪些文件被挂马了,判断方法有三个,方法一就是通过直接查看代码,从中找出挂马代码;方法二是通过查看网站目录修改时间,通过时间进行判断;方法三使用本文提到的软件进行直接定位,通过监听找出恶意代码。在本案例中,网站首页是被确认挂马了,通过查看时间知道被挂马时间是8月25日左右,因此可以通过使用资源管理器中的搜索功能,初步定位时间为8月24日至26日,搜索这个时间范围修改或者产生的文件,如图7,图8所示,搜索出来几十个这个时间段的文件。
图7 搜索被修改文件
图8 搜索结果
2.清除恶意代码
可以使用记事本打开代码文件从中清除恶意代码,在清除代码时一定要注意不要使用FrontPage的预览或者设计,否则会直接访问挂马网站,感染木马程序。建议使用记事本等文本编辑器。在清除恶意代码过程中,发现挂马者竟然对js文件也不放过,如图9所示。
图9 对js文件进行挂马
技巧:
可以使用Frontpage中的替换功能替换当前站点中的所有指定代码。
(三)总结与回顾
本文探讨了如何通过一些工具软件来检测和清除在网站系统中的网页木马,在实际管理维护过程中还有很多本文未提及到的,例如抓包分析,通过分析原始数据包,也能获取被挂马的页面,本文算是抛砖引玉...
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者