※黑客攻防指南※===>系统漏洞==>IE浏览器跨站访问的弱验证漏洞
IE浏览器跨站访问的弱验证漏洞

IE浏览器跨站访问的弱验证漏洞 (MS,补丁)

涉及程序:
Microsoft Internet Explorer 5.5 /6.0

描述:
IE浏览器跨站访问的弱验证漏洞

详细:
元素<frame> ,特别是<iframe>通常使用在许多大的网站页面源文件中,像 hotmail.com, google.com 和 microsoft.com 等网站的大部分页面就经常用到.

框架(Frame)可以含有其它域或协议的URL,按照设计它应有严格的安全规范,一个网站或域中的框架脚本应该是不能访问其它站点的框架内容的。

微软在页面http://msdn.microsoft.com/workshop/author/om/xframe_scripting_security.asp
中专门讨论了这个 Cross-Frame Scripting 问题。

但是不幸的是我们发现 IE 在验证跨站访问时存在漏洞,这将导致一个域中的脚本能非法访问其它域框架中的内容和信息。在任何含有元素<frame>或<iframe>的网页中运行恶意脚本,非法获取其它站点的 cookie 信息,访问和篡改站点内容,甚至在客户机器上执行任意指令。

要攻击成功,攻击者必须诱使用户浏览攻击者控制的恶意站点或发的 HTML 邮件。在一个站点被载入后,外部域(external domain)仍旧能够访问它的框架集(frames collection)。但是因为攻击者并不能直接访问这些框架的 document 对象,所以这对攻击者没有任何帮助。

然而,由于能够设置框架(Frame)的 URL. 如果将子框架(child Frame)的URL设置为"javascript:[code]",将能够在当前载入 URL 的 context 中运行脚本。仅仅这样的话,此缺陷还不会构成什么威胁,但是如果子框架(child Frame)不在受害者的域中,攻击者通过简单地更改框架(Frame)的URL以匹配它的父框架,然后重新指定"javascript:[code]" URL就能到达攻击目的。

为了利用此缺陷非法访问目标用户本地系统,攻击者必须知道用户本地系统含有<frame>或<iframe>的文件或资源路径。为了能够非法读取并运行任意程序,攻击者必须载入"res://shdoclc.dll/privacypolicy.dlg"并且更改框架(Frame)的URL。

对 Internet Explorer 5.5 用户来说,比较幸运的是由于"PrivacyPolicy.dlg"仅仅在6.0版本中被支持。然而 Windows 在相关位置自带的几个HTML文件可能含有frames. 一个攻击者通过对本地文件系统扫描找出后,可以像使用"PrivacyPolicy.dlg"一样利用这些HTML文件。

受影响程序:
======================
Microsoft Internet Explorer 5.5 /6.0 (以前版本IE不受此缺陷影响)

另外任何使用了IE引擎(WebBrowser control)的应用程序(像 Outlook, MSN Explorer 等)都受此缺陷影响。


攻击方法:
此攻击代码可非法获取 google.com 用户 cookie ,它使用一个新的窗口载入受害者的站点页面,子框架是 Google 的信息树框架。


<script language="jscript">
onload=function () {
var
oVictim=open("http://groups.google.com/groups?threadm=anews.Aunc.850","OurVi
ctim","width=100,height=100");
setTimeout(
function () {
oVictim.frames[0].location.href="javascript:alert(document.cooki
e)";
},
7000
);
}
</script>



解决方案:
厂商目前还没有提供补丁或者升级程序,建议用户随时关注厂商站点以获取最新版本:

http://www.microsoft.com

临时解决方案:

* 禁止 Active Scripting.


 

主目录 分目录

Copyright By「黑白网络工作室」2002 All Rights Reserve