Skip to content
Fencer Vulns
critical 9.8

CVE-2009-2422 in the critical feed json

rails vulnerable to improper authentication

published 2009-07-10 17 y ago modified 2026-06-16 4 mo ago also GHSA-rxq3-gm4p-5fj4 , EUVD-2017-0307

cvss
9.8
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
3.4%
EPSS 3.4% chance of exploitation in 30 days, percentile 88%
public exploits
0
none known

Summary

The example code for the digest authentication functionality (http_authentication.rb) in Ruby on Rails before 2.3.3 defines an authenticate_or_request_with_http_digest block that returns nil instead of false when the user does not exist, which allows context-dependent attackers to bypass authentication for applications that are derived from this example by sending an invalid username without a password.

Patch / fix

  • rubygems rails 2.3.3
  • rubyonrails ruby_on_rails 2.3.3
  • apple mac_os_x 10.6.3
  • apple mac_os_x_server 10.6.3
  • rails Debian 14, Debian 13, Debian 12 2.3.5-1

debian advisories DEBIAN-CVE-2009-2422

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2009-2422 updated

rubygem-actionpack: authenticate_with_http_digest authentication bypass

  • Red Hat All currently supported Red Hat products
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

3.38% chance of exploitation in the next 30 days, higher than 88% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • n8.tumblr.com http://n8.tumblr.com/post/117477059/security-hole-found-in-rails-2-3s referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
NVD 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 2.0 7.5 AV:N/AC:L/Au:N/C:P/I:P/A:P
GitHub 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected packages

ecosystem package affected fixed in
rubygems rails
<2.3.3
2.3.3

Classification

Weakness
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.