CVE-2012-3424
actionpack Improper Authentication vulnerability
The decode_credentials method in actionpack/lib/action_controller/metal/http_authentication.rb in Ruby on Rails 3.x before 3.0.16, 3.1.x before 3.1.7, and 3.2.x before 3.2.7 converts Digest Authentication strings to symbols, which allows remote attackers to cause a denial of service by leveraging access to an application that uses a with_http_digest helper method, as demonstrated by the authenticate_or_request_with_http_digest method.
Exploit likelihood
What each source reports
NVD Score used
5.0
The decode_credentials method in actionpack/lib/action_controller/metal/http_authentication.rb in Ruby on Rails 3.x before 3.0.16, 3.1.x before 3.1.7, and 3.2.x before 3.2.7 converts Digest Authentication strings to symbols, which allows remote attackers to cause a denial of service by leveraging access to an application that uses a with_http_digest helper method, as demonstrated by the authenticate_or_request_with_http_digest method.
- Record
CVE-2012-3424- CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:N/I:N/A:P - Weakness
- CWE-287
- Updated
- 2026-11-02
CVE List No score
The decode_credentials method in actionpack/lib/action_controller/metal/http_authentication.rb in Ruby on Rails 3.x before 3.0.16, 3.1.x before 3.1.7, and 3.2.x before 3.2.7 converts Digest Authentication strings to symbols, which allows remote attackers to cause a denial of service by leveraging access to an application that uses a with_http_digest helper method, as demonstrated by the authenticate_or_request_with_http_digest method.
- Record
CVE-2012-3424- Updated
- 2026-11-02
EUVDEUVD-2017-0197 No score
The decode_credentials method in actionpack/lib/action_controller/metal/http_authentication.rb in Ruby on Rails 3.x before 3.0.16, 3.1.x before 3.1.7, and 3.2.x before 3.2.7 converts Digest Authentication strings to symbols, which allows remote attackers to cause a denial of service by leveraging access to an application that uses a with_http_digest helper method, as demonstrated by the authenticate_or_request_with_http_digest method.
- Record
EUVD-2017-0197- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-92w9-2pqw-rhjj No score
actionpack Improper Authentication vulnerability
The decode_credentials method in actionpack/lib/action_controller/metal/http_authentication.rb in Ruby on Rails before 3.0.16, 3.1.x before 3.1.7, and 3.2.x before 3.2.7 converts Digest Authentication strings to symbols, which allows remote attackers to cause a denial of service by leveraging access to an application that uses a with_http_digest helper method, as demonstrated by the authenticate_or_request_with_http_digest method.
- Record
GHSA-92w9-2pqw-rhjj- Weakness
- CWE-287
- Updated
- 2026-11-02
OSVGHSA-92w9-2pqw-rhjj No score
actionpack Improper Authentication vulnerability
The decode_credentials method in actionpack/lib/action_controller/metal/http_authentication.rb in Ruby on Rails before 3.0.16, 3.1.x before 3.1.7, and 3.2.x before 3.2.7 converts Digest Authentication strings to symbols, which allows remote attackers to cause a denial of service by leveraging access to an application that uses a with_http_digest helper method, as demonstrated by the authenticate_or_request_with_http_digest method.
- Record
GHSA-92w9-2pqw-rhjj- Weakness
- CWE-287
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
actionpackRubyGems |
3.1.0 up to 3.1.7 | 3.1.7 |
actionpackRubyGems |
3.2.0 up to 3.2.7 | 3.2.7 |
actionpackRubyGems |
3.0.0.beta up to 3.0.16 | 3.0.16 |
actionpackRubyGems |
before 2.3.5 | 2.3.5 |
actionpackRubyGems |
3.0.0.beta up to 3.0.16, plus listed versions 3.0.03.0.0.beta23.0.0.beta33.0.0.beta43.0.0.rc Show 32 moreShow less3.0.0.rc23.0.13.0.103.0.10.rc13.0.113.0.123.0.12.rc13.0.133.0.13.rc13.0.143.0.153.0.23.0.33.0.43.0.4.rc13.0.53.0.5.rc13.0.63.0.6.rc13.0.6.rc23.0.73.0.7.rc13.0.7.rc23.0.83.0.8.rc13.0.8.rc23.0.8.rc43.0.93.0.9.rc13.0.9.rc33.0.9.rc43.0.9.rc5 |
3.0.16 |
actionpackRubyGems |
3.1.0 up to 3.1.7, plus listed versions 3.1.13.1.1.rc13.1.1.rc23.1.1.rc33.1.2 Show 8 moreShow less3.1.2.rc13.1.2.rc23.1.33.1.43.1.4.rc13.1.53.1.5.rc13.1.6 |
3.1.7 |
actionpackRubyGems |
3.2.0 up to 3.2.7, plus listed versions 3.2.13.2.23.2.2.rc13.2.33.2.3.rc1 Show 6 moreShow less3.2.3.rc23.2.43.2.4.rc13.2.53.2.63.2.7.rc1 |
3.2.7 |
actionpackRubyGems |
before 2.3.5, plus listed versions 0.9.00.9.51.0.01.0.11.1.0 Show 43 moreShow less1.10.11.10.21.11.01.11.11.11.21.12.01.12.11.12.21.12.31.12.41.12.51.13.01.13.11.13.21.13.31.13.41.13.51.13.61.2.01.3.01.3.11.4.01.5.01.5.11.6.01.7.01.8.01.8.11.9.01.9.12.0.02.0.12.0.22.0.42.0.52.1.02.1.12.1.22.2.22.2.32.3.22.3.32.3.4 |
2.3.5 |
graphvizRed Hat:openshift:1::el6 |
before 0:2.26.0-10.el6 | 0:2.26.0-10.el6 |
graphviz-debuginfoRed Hat:openshift:1::el6 |
before 0:2.26.0-10.el6 | 0:2.26.0-10.el6 |
Show 67 moreShow less
| Package | Affected | Fixed |
|---|---|---|
graphviz-develRed Hat:openshift:1::el6 |
before 0:2.26.0-10.el6 | 0:2.26.0-10.el6 |
graphviz-docRed Hat:openshift:1::el6 |
before 0:2.26.0-10.el6 | 0:2.26.0-10.el6 |
graphviz-gdRed Hat:openshift:1::el6 |
before 0:2.26.0-10.el6 | 0:2.26.0-10.el6 |
graphviz-rubyRed Hat:openshift:1::el6 |
before 0:2.26.0-10.el6 | 0:2.26.0-10.el6 |
openshift-consoleRed Hat:openshift:1::el6 |
before 0:0.0.16-1.el6op | 0:0.0.16-1.el6op |
openshift-origin-brokerRed Hat:openshift:1::el6 |
before 0:1.0.11-1.el6op | 0:1.0.11-1.el6op |
openshift-origin-broker-utilRed Hat:openshift:1::el6 |
before 0:1.0.15-1.el6op | 0:1.0.15-1.el6op |
ruby193-rubyRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-ruby-debuginfoRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-ruby-develRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-ruby-docRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-ruby-irbRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-ruby-libsRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-ruby-tcltkRed Hat:openshift:1::el6 |
before 0:1.9.3.327-25.el6 | 0:1.9.3.327-25.el6 |
ruby193-rubygem-actionpackRed Hat:openshift:1::el6 |
before 1:3.2.8-3.el6 | 1:3.2.8-3.el6 |
ruby193-rubygem-actionpack-docRed Hat:openshift:1::el6 |
before 1:3.2.8-3.el6 | 1:3.2.8-3.el6 |
ruby193-rubygem-activemodelRed Hat:openshift:1::el6 |
before 0:3.2.8-2.el6 | 0:3.2.8-2.el6 |
ruby193-rubygem-activemodel-docRed Hat:openshift:1::el6 |
before 0:3.2.8-2.el6 | 0:3.2.8-2.el6 |
ruby193-rubygem-activerecordRed Hat:openshift:1::el6 |
before 1:3.2.8-3.el6 | 1:3.2.8-3.el6 |
ruby193-rubygem-activerecord-docRed Hat:openshift:1::el6 |
before 1:3.2.8-3.el6 | 1:3.2.8-3.el6 |
ruby193-rubygem-bigdecimalRed Hat:openshift:1::el6 |
before 0:1.1.0-25.el6 | 0:1.1.0-25.el6 |
ruby193-rubygem-io-consoleRed Hat:openshift:1::el6 |
before 0:0.3-25.el6 | 0:0.3-25.el6 |
ruby193-rubygem-jsonRed Hat:openshift:1::el6 |
before 0:1.5.4-25.el6 | 0:1.5.4-25.el6 |
ruby193-rubygem-minitestRed Hat:openshift:1::el6 |
before 0:2.5.1-25.el6 | 0:2.5.1-25.el6 |
ruby193-rubygem-railtiesRed Hat:openshift:1::el6 |
before 0:3.2.8-2.el6 | 0:3.2.8-2.el6 |
ruby193-rubygem-railties-docRed Hat:openshift:1::el6 |
before 0:3.2.8-2.el6 | 0:3.2.8-2.el6 |
ruby193-rubygem-rakeRed Hat:openshift:1::el6 |
before 0:0.9.2.2-25.el6 | 0:0.9.2.2-25.el6 |
ruby193-rubygem-rdocRed Hat:openshift:1::el6 |
before 0:3.9.4-25.el6 | 0:3.9.4-25.el6 |
ruby193-rubygem-ruby_parserRed Hat:openshift:1::el6 |
before 0:2.3.1-3.el6op | 0:2.3.1-3.el6op |
ruby193-rubygem-ruby_parser-docRed Hat:openshift:1::el6 |
before 0:2.3.1-3.el6op | 0:2.3.1-3.el6op |
ruby193-rubygemsRed Hat:openshift:1::el6 |
before 0:1.8.23-25.el6 | 0:1.8.23-25.el6 |
ruby193-rubygems-develRed Hat:openshift:1::el6 |
before 0:1.8.23-25.el6 | 0:1.8.23-25.el6 |
rubygem-actionpackRed Hat:openshift:1::el6 |
before 1:3.0.13-4.el6op | 1:3.0.13-4.el6op |
rubygem-activemodelRed Hat:openshift:1::el6 |
before 0:3.0.13-3.el6op | 0:3.0.13-3.el6op |
rubygem-activemodel-docRed Hat:openshift:1::el6 |
before 0:3.0.13-3.el6op | 0:3.0.13-3.el6op |
rubygem-activerecordRed Hat:openshift:1::el6 |
before 1:3.0.13-5.el6op | 1:3.0.13-5.el6op |
rubygem-bsonRed Hat:openshift:1::el6 |
before 0:1.8.1-2.el6op | 0:1.8.1-2.el6op |
rubygem-mongoRed Hat:openshift:1::el6 |
before 0:1.8.1-2.el6op | 0:1.8.1-2.el6op |
rubygem-mongo-docRed Hat:openshift:1::el6 |
before 0:1.8.1-2.el6op | 0:1.8.1-2.el6op |
rubygem-openshift-origin-auth-remote-userRed Hat:openshift:1::el6 |
before 0:1.0.5-1.el6op | 0:1.0.5-1.el6op |
rubygem-openshift-origin-consoleRed Hat:openshift:1::el6 |
before 0:1.0.10-1.el6op | 0:1.0.10-1.el6op |
rubygem-openshift-origin-console-docRed Hat:openshift:1::el6 |
before 0:1.0.10-1.el6op | 0:1.0.10-1.el6op |
rubygem-openshift-origin-controllerRed Hat:openshift:1::el6 |
before 0:1.0.12-1.el6op | 0:1.0.12-1.el6op |
rubygem-ruby_parserRed Hat:openshift:1::el6 |
before 0:2.0.4-6.el6op | 0:2.0.4-6.el6op |
rubygem-ruby_parser-docRed Hat:openshift:1::el6 |
before 0:2.0.4-6.el6op | 0:2.0.4-6.el6op |
openshift-origin-cartridge-jbosseap-6.0Red Hat:openshift:1::el6 |
before 0:1.0.4-1.el6op | 0:1.0.4-1.el6op |
openshift-origin-cartridge-cron-1.4Red Hat:openshift:1::el6 |
before 0:1.0.3-1.el6op | 0:1.0.3-1.el6op |
openshift-origin-cartridge-diy-0.1Red Hat:openshift:1::el6 |
before 0:1.0.3-1.el6op | 0:1.0.3-1.el6op |
openshift-origin-cartridge-haproxy-1.4Red Hat:openshift:1::el6 |
before 0:1.0.4-1.el6op | 0:1.0.4-1.el6op |
openshift-origin-cartridge-jbossews-1.0Red Hat:openshift:1::el6 |
before 0:1.0.13-1.el6op | 0:1.0.13-1.el6op |
openshift-origin-cartridge-jenkins-1.4Red Hat:openshift:1::el6 |
before 0:1.0.2-1.el6op | 0:1.0.2-1.el6op |
openshift-origin-cartridge-jenkins-client-1.4Red Hat:openshift:1::el6 |
before 0:1.0.2-1.el6op | 0:1.0.2-1.el6op |
openshift-origin-cartridge-mysql-5.1Red Hat:openshift:1::el6 |
before 0:1.0.5-1.el6op | 0:1.0.5-1.el6op |
openshift-origin-cartridge-perl-5.10Red Hat:openshift:1::el6 |
before 0:1.0.3-1.el6op | 0:1.0.3-1.el6op |
openshift-origin-cartridge-php-5.3Red Hat:openshift:1::el6 |
before 0:1.0.5-1.el6op | 0:1.0.5-1.el6op |
openshift-origin-cartridge-postgresql-8.4Red Hat:openshift:1::el6 |
before 0:1.0.3-2.el6op | 0:1.0.3-2.el6op |
openshift-origin-cartridge-ruby-1.8Red Hat:openshift:1::el6 |
before 0:1.0.7-1.el6op | 0:1.0.7-1.el6op |
openshift-origin-cartridge-ruby-1.9-sclRed Hat:openshift:1::el6 |
before 0:1.0.8-1.el6op | 0:1.0.8-1.el6op |
openshift-origin-msg-node-mcollectiveRed Hat:openshift:1::el6 |
before 0:1.0.3-1.el6op | 0:1.0.3-1.el6op |
phpRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
php-bcmathRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
php-debuginfoRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
php-develRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
php-imapRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
php-mbstringRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
php-processRed Hat:openshift:1::el6 |
before 0:5.3.3-22.el6 | 0:5.3.3-22.el6 |
rubygem-openshift-origin-nodeRed Hat:openshift:1::el6 |
before 0:1.0.11-1.el6op | 0:1.0.11-1.el6op |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2012-3424 is a medium vulnerability (CVSS 5.0) in Rubyonrails Rails, published August 8, 2012. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.89%, the 79th percentile. Fixed in actionpack 3.1.7.
References
groups.google.com/group/rubyonrails-security/msg/244d32f2fa25147d?hl=en&dmode=source&output=gplain
weblog.rubyonrails.org/2012/7/26/ann-rails-3-2-7-has-been-released
lists.opensuse.org/opensuse-updates/2012-08/msg00046.html
rhn.redhat.com/errata/RHSA-2013-0154.html
nvd.nist.gov/vuln/detail/CVE-2012-3424
github.com/rails/rails/commit/3719bd3e95523c5518507dbe44f260f252930600
Show 77 moreShow less
github.com/advisories/GHSA-92w9-2pqw-rhjj
github.com/rails/rails
access.redhat.com/errata/RHSA-2013:0582
access.redhat.com/security/updates/classification
access.redhat.com/knowledge/docs
bugzilla.redhat.com/show_bug.cgi?id=827353
bugzilla.redhat.com/show_bug.cgi?id=827363
bugzilla.redhat.com/show_bug.cgi?id=831573
bugzilla.redhat.com/show_bug.cgi?id=831581
bugzilla.redhat.com/show_bug.cgi?id=843711
bugzilla.redhat.com/show_bug.cgi?id=847196
bugzilla.redhat.com/show_bug.cgi?id=847199
bugzilla.redhat.com/show_bug.cgi?id=847200
bugzilla.redhat.com/show_bug.cgi?id=862598
bugzilla.redhat.com/show_bug.cgi?id=862614
bugzilla.redhat.com/show_bug.cgi?id=865940
bugzilla.redhat.com/show_bug.cgi?id=875236
bugzilla.redhat.com/show_bug.cgi?id=887353
bugzilla.redhat.com/show_bug.cgi?id=889426
bugzilla.redhat.com/show_bug.cgi?id=892806
bugzilla.redhat.com/show_bug.cgi?id=892866
bugzilla.redhat.com/show_bug.cgi?id=895347
bugzilla.redhat.com/show_bug.cgi?id=895355
bugzilla.redhat.com/show_bug.cgi?id=902412
bugzilla.redhat.com/show_bug.cgi?id=902630
bugzilla.redhat.com/show_bug.cgi?id=903526
bugzilla.redhat.com/show_bug.cgi?id=903546
bugzilla.redhat.com/show_bug.cgi?id=905021
bugzilla.redhat.com/show_bug.cgi?id=905656
bugzilla.redhat.com/show_bug.cgi?id=906227
bugzilla.redhat.com/show_bug.cgi?id=906845
security.access.redhat.com/data/csaf/v2/advisories/2013/rhsa-2013_0582.json
access.redhat.com/security/cve/CVE-2012-2660
cve.org/CVERecord?id=CVE-2012-2660
nvd.nist.gov/vuln/detail/CVE-2012-2660
access.redhat.com/security/cve/CVE-2012-2661
cve.org/CVERecord?id=CVE-2012-2661
nvd.nist.gov/vuln/detail/CVE-2012-2661
access.redhat.com/security/cve/CVE-2012-2694
cve.org/CVERecord?id=CVE-2012-2694
nvd.nist.gov/vuln/detail/CVE-2012-2694
access.redhat.com/security/cve/CVE-2012-2695
cve.org/CVERecord?id=CVE-2012-2695
nvd.nist.gov/vuln/detail/CVE-2012-2695
access.redhat.com/security/cve/CVE-2012-3424
cve.org/CVERecord?id=CVE-2012-3424
access.redhat.com/security/cve/CVE-2012-3463
cve.org/CVERecord?id=CVE-2012-3463
nvd.nist.gov/vuln/detail/CVE-2012-3463
access.redhat.com/security/cve/CVE-2012-3464
cve.org/CVERecord?id=CVE-2012-3464
nvd.nist.gov/vuln/detail/CVE-2012-3464
access.redhat.com/security/cve/CVE-2012-3465
cve.org/CVERecord?id=CVE-2012-3465
nvd.nist.gov/vuln/detail/CVE-2012-3465
access.redhat.com/security/cve/CVE-2012-4464
cve.org/CVERecord?id=CVE-2012-4464
nvd.nist.gov/vuln/detail/CVE-2012-4464
access.redhat.com/security/cve/CVE-2012-4466
cve.org/CVERecord?id=CVE-2012-4466
nvd.nist.gov/vuln/detail/CVE-2012-4466
access.redhat.com/security/cve/CVE-2012-4522
cve.org/CVERecord?id=CVE-2012-4522
nvd.nist.gov/vuln/detail/CVE-2012-4522
access.redhat.com/security/cve/CVE-2012-5371
cve.org/CVERecord?id=CVE-2012-5371
nvd.nist.gov/vuln/detail/CVE-2012-5371
access.redhat.com/security/cve/CVE-2013-0155
cve.org/CVERecord?id=CVE-2013-0155
nvd.nist.gov/vuln/detail/CVE-2013-0155
access.redhat.com/security/cve/CVE-2013-0162
cve.org/CVERecord?id=CVE-2013-0162
nvd.nist.gov/vuln/detail/CVE-2013-0162
access.redhat.com/security/cve/CVE-2013-0276
bugzilla.redhat.com/show_bug.cgi?id=909528
cve.org/CVERecord?id=CVE-2013-0276
nvd.nist.gov/vuln/detail/CVE-2013-0276