The BigDecimal library in Ruby 1.8.6 before p369 and 1.8.7 before p173 allows context-dependent attackers to cause a denial of service (application crash) via a string argument that represents a large number, as demonstrated by an attempted conversion to the Float data type.
CVE-2009-1904
- No confirmed exploitation signals yet
A fix is available — apply it.
- CVSS v3
- —
- EG Score
- 0.0(none)
- EPSS
- 94.3%
- KEV
- Not listed
Published
June 11, 2009
Last Modified
April 23, 2026
References (62)
- cve@mitrehttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=532689
- cve@mitrehttp://bugs.gentoo.org/show_bug.cgi?id=273213
- cve@mitrehttp://github.com/NZKoz/bigdecimal-segfault-fix/tree/master
- cve@mitrehttp://groups.google.com/group/rubyonrails-security/msg/fad60751e2b9b4f6?dmode=source
- cve@mitrehttp://lists.apple.com/archives/security-announce/2010//Mar/msg00001.html
- cve@mitrehttp://mail-index.netbsd.org/pkgsrc-changes/2009/06/10/msg024708.html
- cve@mitrehttp://osvdb.org/55031
- cve@mitrehttp://redmine.ruby-lang.org/issues/show/794
- cve@mitrehttp://secunia.com/advisories/35399
- cve@mitrehttp://secunia.com/advisories/35527
- cve@mitrehttp://secunia.com/advisories/35593
- cve@mitrehttp://secunia.com/advisories/35699
- cve@mitrehttp://secunia.com/advisories/35937
- cve@mitrehttp://secunia.com/advisories/37705
- cve@mitrehttp://security.gentoo.org/glsa/glsa-200906-02.xml
Patch Availability(3)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| ubuntu | libruby1.9 (1.9.0.5-1ubuntu1.2) @ karmic | 2026-05-30 | ubuntu |
| ubuntu | libruby1.9 (1.9.0.2-9ubuntu1.1) @ jaunty | 2026-05-30 | ubuntu |
| redhat | ruby-0:1.8.5-5.el5_3.7 | 2009-07-02 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
All Vendor Advisories
(3)
Every vendor that published an advisory referencing this CVE — pulled from our cve_vendor_advisories aggregation. Click any row for the vendor's original advisory page.
Data Freshness Timeline
(refreshed 6× in last 7d / 39× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-07-06 02:19 UTCEPSS rescore
- 2026-07-06 02:19 UTCEPSS rescore
- 2026-07-05 02:26 UTCEPSS rescore
- 2026-07-05 02:26 UTCEPSS rescore
- 2026-07-04 06:27 UTCEPSS rescore
- 2026-07-01 15:02 UTCEPSS rescore
- 2026-06-30 23:19 UTCEPSS rescore
- 2026-06-29 14:02 UTCEPSS rescore
- 2026-06-29 14:02 UTCEPSS rescore
- 2026-06-28 14:03 UTCEPSS rescore
- 2026-06-28 04:52 UTCEPSS rescore
- 2026-06-28 04:52 UTCEPSS rescore
- 2026-06-27 03:05 UTCEPSS rescore
- 2026-06-25 13:46 UTCEPSS rescore
- 2026-06-25 13:46 UTCEPSS rescore
- 2026-06-24 14:02 UTCEPSS rescore
- 2026-06-24 14:02 UTCEPSS rescore
- 2026-06-23 21:29 UTCEPSS rescore
- 2026-06-23 21:29 UTCEPSS rescore
- 2026-06-22 14:22 UTCEPSS rescore
- 2026-06-22 14:22 UTCEPSS rescore
- 2026-06-21 14:53 UTCEPSS rescore
- 2026-06-21 01:56 UTCEPSS rescore
- 2026-06-21 01:56 UTCEPSS rescore
- 2026-06-18 17:49 UTCEPSS rescore
Show 51 moreShow fewer
- 2026-06-18 17:49 UTCEPSS rescore
- 2026-06-17 17:49 UTCEPSS rescore
- 2026-06-17 17:49 UTCEPSS rescore
- 2026-06-16 17:49 UTCEPSS rescore
- 2026-06-16 17:49 UTCEPSS rescore
- 2026-06-15 17:44 UTCEPSS rescore
- 2026-06-14 23:14 UTCEPSS rescore
- 2026-06-14 23:14 UTCEPSS rescore
- 2026-06-13 22:57 UTCEPSS rescore
- 2026-06-12 23:08 UTCEPSS rescore
- 2026-06-12 23:08 UTCEPSS rescore
- 2026-06-10 22:14 UTCEPSS rescore
- 2026-06-10 13:17 UTCEPSS rescore
- 2026-06-08 14:13 UTCEPSS rescore
- 2026-06-07 15:22 UTCEPSS rescore
- 2026-06-07 15:22 UTCEPSS rescore
- 2026-06-06 13:44 UTCEPSS rescore
- 2026-06-06 13:44 UTCEPSS rescore
- 2026-06-06 13:44 UTCEPSS rescore
- 2026-06-05 22:44 UTCEPSS rescore
- 2026-06-05 22:44 UTCEPSS rescore
- 2026-06-05 06:07 UTCEPSS rescore
- 2026-06-04 13:09 UTCEPSS rescore
- 2026-06-04 13:09 UTCEPSS rescore
- 2026-06-02 20:10 UTCEPSS rescore
- 2026-06-02 20:10 UTCEPSS rescore
- 2026-06-01 13:49 UTCEPSS rescore
- 2026-06-01 13:49 UTCEPSS rescore
- 2026-05-31 22:28 UTCEPSS rescore
- 2026-05-31 22:28 UTCEPSS rescore
- 2026-05-31 00:13 UTCEPSS rescore
- 2026-05-31 00:13 UTCEPSS rescore
- 2026-05-30 16:31 UTCEG score recompute
- 2026-05-30 16:31 UTCVendor advisory
- 2026-05-30 16:31 UTCGHSA enrichment
- 2026-05-29 13:40 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-27 13:38 UTCEPSS rescore
- 2026-05-27 13:38 UTCEPSS rescore
- 2026-05-26 13:41 UTCEPSS rescore
- 2026-05-26 13:41 UTCEPSS rescore
- 2026-05-26 07:16 UTCEPSS rescore
- 2026-05-26 07:16 UTCEPSS rescore
- 2026-05-24 16:43 UTCEPSS rescore
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-20 11:21 UTCEPSS rescore
- 2026-05-20 11:20 UTCEPSS rescore
- 2026-05-18 21:29 UTCEPSS rescore
Publicly available exploits
(1 reference)Working exploit code is in the public domain (1 GitHub PoC). Defenders should treat patch urgency accordingly — public PoCs typically lead to mass-exploitation within 24-72 hours.
- GitHub PoCNZKoz/bigdecimal-segfault-fixFirst seen Jun 8, 2009
Provides a quick workaround for the segfault bug in Ruby (CVE-2009-1904)
Open source ↗
Related CVEs(same vendor)
Frequently asked(4)
What is CVE-2009-1904?
When was CVE-2009-1904 disclosed?
Is CVE-2009-1904 actively exploited?
How do I remediate CVE-2009-1904?
Dependency Blast Radius
Explore the affected products and dependency analysis for CVE-2009-1904
Is Your Infrastructure Affected by CVE-2009-1904?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.