Description
Array index error in the (1) dtoa implementation in dtoa.c (aka pdtoa.c) and the (2) gdtoa (aka new dtoa) implementation in gdtoa/misc.c in libc, as used in multiple operating systems and products including in FreeBSD 6.4 and 7.2, NetBSD 5.0, OpenBSD 4.5, Mozilla Firefox 3.0.x before 3.0.15 and 3.5.x before 3.5.4, K-Meleon 1.5.3, SeaMonkey 1.1.8, and other products, allows context-dependent attackers to cause a denial of service (application crash) and possibly execute arbitrary code via a large precision value in the format argument to a printf function, which triggers incorrect memory allocation and a heap-based buffer overflow during conversion to a floating-point number.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | mono | 4.2.1.102+dfsg2-4 | — |
| Debian 14 | nspr | 4.8-2 | — |
| Debian 13 | mono | 4.2.1.102+dfsg2-4 | — |
| Debian 13 | nspr | 4.8-2 | — |
| Debian 12 | mono | 4.2.1.102+dfsg2-4 | — |
| Debian 12 | nspr | 4.8-2 | — |
| Debian 8 | mono | 3.2.8+dfsg-10+deb8u1 | DLA-1564-1 |
| Debian 6.0 | mono | 2.6.7-5.1+deb6u2 | DLA-376-1 |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 5.0 | kdelibs | 4:3.5.10.dfsg.1-0lenny4 | DSA-1998-1 |
| Debian 5.0 | nspr | 4.7.1-5 | DSA-1931-1 |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| RHEL 5 | firefox | 3.0.15-3.el5_4 | RHSA-2009:1530 |
| RHEL 5 | kdelibs +2 | 6:3.5.4-25.el5_4.1 | RHSA-2009:1601 |
| RHEL 5 | nspr +1 | 4.7.6-1.el5_4 | RHSA-2009:1530 |
| RHEL 5 | php +18 | 5.1.6-44.el5_10 | RHSA-2014:0311 |
| RHEL 5 | thunderbird | 2.0.0.24-2.el5_4 | RHSA-2010:0153 |
| RHEL 5 | xulrunner +2 | 1.9.0.15-3.el5_4 | RHSA-2009:1530 |
| RHEL 4 | firefox | 3.0.15-3.el4 | RHSA-2009:1530 |
| RHEL 4 | kdelibs +1 | 6:3.3.1-17.el4_8.1 | RHSA-2009:1601 |
| RHEL 4 | nspr +1 | 4.7.6-1.el4_8 | RHSA-2009:1530 |
| RHEL 4 | seamonkey +5 | 1.0.9-50.el4_8 | RHSA-2009:1531 |
| RHEL 4 | thunderbird | 1.5.0.12-25.el4 | RHSA-2010:0154 |
| RHEL 3 | seamonkey +9 | 1.0.9-0.47.el3 | RHSA-2009:1531 |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Rhel Productivity 5 | thunderbird | 2.0.0.24-2.el5_4 | RHSA-2010:0153 |
| Red Hat Rhel Mission Critical 5 | php +18 | 5.1.6-23.6.el5_3 | RHSA-2014:0312 |
| RHEL 5.9 EUS | php +18 | 5.1.6-40.el5_9.2 | RHSA-2014:0312 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 11 SP4 | mono-core | 2.6.7-0.16.1 | SUSE-SU-2016:2958-1, SUSE-SU-2016:0257-1 |
| SLES 11 SP3 | mono-core | 2.6.7-0.16.1 | SUSE-SU-2016:2958-1, SUSE-SU-2016:0257-1 |
Show 2 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 11 SP4 | mono-core | 2.6.7-0.16.1 | SUSE-SU-2016:2958-1, SUSE-SU-2016:0257-1 |
| SLES for SAP 11 SP3 | mono-core | 2.6.7-0.16.1 | SUSE-SU-2016:0257-1 |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
Exploit-DB 11
- Apple Mac OSX 10.x - 'libc/strtod(3)' Memory Corruption EDB-33479 · dos · Jan 8, 2010 · verified
- MATLAB R2009b - 'dtoa' Implementation Memory Corruption EDB-33480 · dos · Jan 8, 2010 · verified
- Sunbird 0.9 - Array Overrun Code Execution EDB-10380 · remote · Dec 11, 2009
- Opera Web Browser 10.01 - 'dtoa()' Remote Code Execution EDB-33363 · remote · Nov 20, 2009 · verified
- KDE 4.3.3 - KDELibs 'dtoa()' Remote Code Execution EDB-33364 · remote · Nov 20, 2009 · verified
- KDE KDELibs 4.3.3 - Remote Array Overrun EDB-10184 · dos · Nov 19, 2009 · verified
- SeaMonkey 1.1.8 - Remote Array Overrun EDB-10185 · dos · Nov 19, 2009 · verified
- K-Meleon 1.5.3 - Remote Array Overrun EDB-10186 · dos · Nov 19, 2009 · verified
- Opera 10.01 - Remote Array Overrun EDB-10187 · dos · Nov 19, 2009 · verified
- Mozilla Firefox 3.5.3 - Floating Point Conversion Heap Overflow EDB-33312 · dos · Oct 27, 2009 · verified
- BSD (Multiple Distributions) - 'gdtoa/misc.c' Memory Corruption EDB-33058 · dos · May 26, 2009 · verified
GitHub 1 repository
-
Fullmetal5/str2hax ★ 89 · Dec 18, 2018
An implementation of CVE-2009-0689 for the Nintendo Wii.
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Advisories 13
- RHSA-2009:1601 Red Hat Security Advisory: kdelibs security update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- RHSA-2009:1530 Red Hat Security Advisory: firefox security update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- RHSA-2014:0311 Red Hat Security Advisory: php security update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- RHSA-2010:0154 Red Hat Security Advisory: thunderbird security update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- RHSA-2009:1531 Red Hat Security Advisory: seamonkey security update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- DSA-1998-1 kdelibs - arbitrary code execution Debian Security (DSA / DLA) · Mar 9, 2026
- DLA-376-1 mono - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DSA-1931-1 nspr - several vulnerabilities Debian Security (DSA / DLA) · Mar 9, 2026
- DLA-1564-1 mono - security update Debian Security (DSA / DLA) · Mar 9, 2026
- RHSA-2014:0312 Red Hat Security Advisory: php security update Red Hat Security Advisories (RHSA) · Mar 3, 2026
- SUSE-SU-2016:0257-1 Security update for mono-core SUSE / openSUSE Security Updates · Feb 4, 2026
- RHSA-2010:0153 Red Hat Security Advisory: thunderbird security update Red Hat Security Advisories (RHSA) · Jan 14, 2026
- SUSE-SU-2016:2958-1 Security update for mono-core SUSE / openSUSE Security Updates · May 2, 2025
References
- http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/gdtoa/gdtoaimp.h
- http://secunia.com/secunia_research/2009-35/
- https://bugzilla.mozilla.org/show_bug.cgi?id=516862
- 20090625 Multiple Vendors libc/gdtoa printf(3) Array Overrun third-party-advisory
- 20091120 SeaMonkey 1.1.8 Remote Array Overrun (Arbitrary code execution) mailing-list
- 20091211 Thunderbird 2.0.0.23 (lib) Remote Array Overrun (Arbitrary code execution) third-party-advisory
- RHSA-2010:0153 vendor-advisory
- 20091211 Flock 2.5.2 Remote Array Overrun (Arbitrary code execution) third-party-advisory
- MDVSA-2009:330 vendor-advisory
- 39001 third-party-advisory
- SUSE-SR:2009:018 vendor-advisory
- 20091120 K-Meleon 1.5.3 Remote Array Overrun (Arbitrary code execution) mailing-list
- http://support.apple.com/kb/HT4225
- 20091120 Opera 10.01 Remote Array Overrun (Arbitrary code execution) third-party-advisory
- 20091120 K-Meleon 1.5.3 Remote Array Overrun (Arbitrary code execution) third-party-advisory
- http://www.mozilla.org/security/announce/2009/mfsa2009-59.html
- ADV-2010-0094 vdb-entry
- ADV-2010-0648 vdb-entry
- ADV-2010-0650 vdb-entry
- 272909 vendor-advisory
- ADV-2009-3299 vdb-entry
- RHSA-2009:1601 vendor-advisory
- 20091210 Camino 1.6.10 Remote Array Overrun (Arbitrary code execution) mailing-list
- APPLE-SA-2010-03-29-1 vendor-advisory
- [debian-lts-announce] 20181101 [SECURITY] [DLA 1564-1] mono security update mailing-list
- SUSE-SR:2010:013 vendor-advisory
- RHSA-2014:0312 vendor-advisory
- 37683 third-party-advisory
- 38977 third-party-advisory
- http://www.opera.com/support/kb/view/942/
- 20091030 Multiple BSD printf(1) and multiple dtoa/*printf(3) vulnerabilities third-party-advisory
- RHSA-2010:0154 vendor-advisory
- http://support.apple.com/kb/HT4077
- https://bugzilla.mozilla.org/show_bug.cgi?id=516396
- oval:org.mitre.oval:def:6528 vdb-entry signature
- 37682 third-party-advisory
- oval:org.mitre.oval:def:9541 vdb-entry signature
- 38066 third-party-advisory
- USN-915-1 vendor-advisory
- 20091210 Flock 2.5.2 Remote Array Overrun (Arbitrary code execution) mailing-list
- RHSA-2014:0311 vendor-advisory
- ADV-2009-3297 vdb-entry
- 20091211 Camino 1.6.10 Remote Array Overrun (Arbitrary code execution) third-party-advisory
- 37431 third-party-advisory
- 20100108 MacOS X 10.5/10.6 libc/strtod(3) buffer overflow third-party-advisory
- 20091120 SeaMonkey 1.1.8 Remote Array Overrun (Arbitrary code execution) third-party-advisory
- 1022478 vdb-entry
- APPLE-SA-2010-06-21-1 vendor-advisory
- http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/gdtoa/misc.c
- ADV-2009-3334 vdb-entry
- 20091211 Sunbird 0.9 Array Overrun (code execution) third-party-advisory
- MDVSA-2009:294 vendor-advisory
- 35510 vdb-entry