安全研究

安全漏洞
Opera Web浏览器dtoa()实现内存破坏漏洞

发布日期:2009-11-20
更新日期:2009-11-23

受影响系统:
Opera Software Opera 10.10 Beta
Opera Software Opera 10.01
描述:
BUGTRAQ  ID: 37078
CVE ID: CVE-2009-0689

Opera是一款流行的WEB浏览器,支持多种平台。

Opera的dtoa实现处理浮点数转换时存在数组溢出漏洞。在src/lib/libc/gdtoa/gdtoaimp.h中:

- ---gdtoaimp.h---
...
#define Kmax 15
...
- ---gdtoaimp.h---

最大的Kmax长度为15,如果提供了更大的值(如17),程序就会溢出freelist数组。

<*来源:Maksymilian Arciemowicz (max@jestsuper.pl
  
  链接:http://secunia.com/advisories/37431/
        http://marc.info/?l=bugtraq&m=125873210221041&w=2
*>

测试方法:

警 告

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

- -----------------------
<script>
var a=0.<?php echo str_repeat("1",296450); ?>;
</script>
- -----------------------

建议:
厂商补丁:

Opera Software
--------------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://snapshot.opera.com/windows/Opera_1010_1890_in.exe

浏览次数:2255
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障