Every CVE Search/ Get API key

CVE-2009-1904

The BigDecimal library in Ruby 1.8.6 before p369 and 1.8.7 before p173 allows context-dependent...

5.0 MediumPublic exploit

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.

Exploit likelihood

12.8%Up 10.1 points since Feb 4, 2022
90%50%10%1%

What each source reports

NVD Score used 5.0

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.

Record
CVE-2009-1904
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:N/A:P
Weakness
CWE-189
Updated
2026-11-02
CVE List No score

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.

Record
CVE-2009-1904
Updated
2026-11-02
EUVDEUVD-2009-1899 No score

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.

Record
EUVD-2009-1899
Updated
2026-11-03
GitHub AdvisoriesGHSA-prwc-wj59-8vwr No score

The BigDecimal library in Ruby 1.8.6 before p369 and 1.8.7 before p173 allows context-dependent...

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.

Record
GHSA-prwc-wj59-8vwr
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
ruby1.9
Debian:4.0
From an advisory covering 2 CVEs
before 1.9.0+20060609-1etch5, plus listed versions
1.9.0+20060609-11.9.0+20060609-1etch11.9.0+20060609-1etch21.9.0+20060609-1etch31.9.0+20060609-1etch4
1.9.0+20060609-1etch5
ruby1.8
Debian:4.0
From an advisory covering 2 CVEs
before 1.8.5-4etch5, plus listed versions
1.8.5-41.8.5-4etch11.8.5-4etch21.8.5-4etch31.8.5-4etch4
1.8.5-4etch5
ruby1.8
Debian:5.0
From an advisory covering 2 CVEs
before 1.8.7.72-3lenny1, plus listed versions
1.8.7.72-3
1.8.7.72-3lenny1
ruby1.9
Debian:5.0
From an advisory covering 2 CVEs
before 1.9.0.2-9lenny1, plus listed versions
1.9.0.2-9
1.9.0.2-9lenny1
irb
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-debuginfo
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-devel
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-docs
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-libs
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
Show 48 moreShow less
Affected packages
PackageAffectedFixed
ruby-mode
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-tcltk
Red Hat:enterprise_linux:4::as
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
irb
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-debuginfo
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-devel
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-docs
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-libs
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-mode
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-tcltk
Red Hat:enterprise_linux:4::desktop
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
irb
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-debuginfo
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-devel
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-docs
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-libs
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-mode
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-tcltk
Red Hat:enterprise_linux:4::es
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
irb
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-debuginfo
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-devel
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-docs
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-libs
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-mode
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby-tcltk
Red Hat:enterprise_linux:4::ws
From an advisory covering 3 CVEs
before 0:1.8.1-7.el4_8.3
0:1.8.1-7.el4_8.3
ruby
Red Hat:enterprise_linux:5::client_workstation
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-debuginfo
Red Hat:enterprise_linux:5::client_workstation
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-devel
Red Hat:enterprise_linux:5::client_workstation
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-mode
Red Hat:enterprise_linux:5::client_workstation
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-debuginfo
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-docs
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-irb
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-libs
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-rdoc
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-ri
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-tcltk
Red Hat:enterprise_linux:5::client
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-debuginfo
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-devel
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-docs
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-irb
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-libs
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-mode
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-rdoc
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-ri
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7
ruby-tcltk
Red Hat:enterprise_linux:5::server
From an advisory covering 3 CVEs
before 0:1.8.5-5.el5_3.7
0:1.8.5-5.el5_3.7

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHubNZKoz/bigdecimal-segfault-fix2009-06-08

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2009-1904 is a medium vulnerability (CVSS 5.0) in Ruby-lang Ruby, published June 11, 2009. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 12.8%, the 96th percentile. No source names a fixed version.

References

Show 41 moreShow less
MoveEnter Open