Action Record in Ruby on Rails 4.2.x before 4.2.7.1 does not properly consider…
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass, Denial of service
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.0 · NVD. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-284 and CWE-476.
Summary
Action Record in Ruby on Rails 4.2.x before 4.2.7.1 does not properly consider differences in parameter handling between the Active Record component and the JSON implementation, which allows remote attackers to bypass intended database-query restrictions and perform NULL checks or trigger missing WHERE clauses via a crafted request, as demonstrated by certain "[nil]" values, a related issue to CVE-2012-2660, CVE-2012-2694, and CVE-2013-0155.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | — | all versions | — | No fix listed | CNA |
| — | activerecord (RubyGems) | 4.2.0 to before 4.2.7.1 | 4.2.7.1 | Patch available | GHSA-pr3r-4wrp-r2pv |
- — Vendor— Affected all versions Fixed in — No fix listed CNA
- activerecord (RubyGems) Vendor— Affected 4.2.0 to before 4.2.7.1 Fixed in 4.2.7.1 Patch available GHSA-pr3r-4wrp-r2pv
CPE configurations NVD · 27
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:rubyonrails:rails:4.2.0:*:*:*:*:*:*:* | 4.2.0 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:beta1:*:*:*:*:*:* | 4.2.0 beta1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:beta2:*:*:*:*:*:* | 4.2.0 beta2 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:beta3:*:*:*:*:*:* | 4.2.0 beta3 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:beta4:*:*:*:*:*:* | 4.2.0 beta4 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:rc1:*:*:*:*:*:* | 4.2.0 rc1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:rc2:*:*:*:*:*:* | 4.2.0 rc2 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.0:rc3:*:*:*:*:*:* | 4.2.0 rc3 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.1:*:*:*:*:*:*:* | 4.2.1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.1:rc1:*:*:*:*:*:* | 4.2.1 rc1 | Vulnerable | Rails |
- cpe:2.3:a:rubyonrails:rails:4.2.0:*:*:*:*:*:*:* Versions 4.2.0 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:beta1:*:*:*:*:*:* Versions 4.2.0 beta1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:beta2:*:*:*:*:*:* Versions 4.2.0 beta2 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:beta3:*:*:*:*:*:* Versions 4.2.0 beta3 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:beta4:*:*:*:*:*:* Versions 4.2.0 beta4 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:rc1:*:*:*:*:*:* Versions 4.2.0 rc1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:rc2:*:*:*:*:*:* Versions 4.2.0 rc2 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.0:rc3:*:*:*:*:*:* Versions 4.2.0 rc3 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.1:*:*:*:*:*:*:* Versions 4.2.1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.1:rc1:*:*:*:*:*:* Versions 4.2.1 rc1 Vulnerable ·Rails
Show 17 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:rubyonrails:rails:4.2.1:rc2:*:*:*:*:*:* | 4.2.1 rc2 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.1:rc3:*:*:*:*:*:* | 4.2.1 rc3 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.1:rc4:*:*:*:*:*:* | 4.2.1 rc4 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.2:*:*:*:*:*:*:* | 4.2.2 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.3:*:*:*:*:*:*:* | 4.2.3 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.3:rc1:*:*:*:*:*:* | 4.2.3 rc1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.4:*:*:*:*:*:*:* | 4.2.4 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.4:rc1:*:*:*:*:*:* | 4.2.4 rc1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.5:*:*:*:*:*:*:* | 4.2.5 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.5:rc1:*:*:*:*:*:* | 4.2.5 rc1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.5:rc2:*:*:*:*:*:* | 4.2.5 rc2 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.5.1:*:*:*:*:*:*:* | 4.2.5.1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.5.2:*:*:*:*:*:*:* | 4.2.5.2 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.6:*:*:*:*:*:*:* | 4.2.6 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.6:rc1:*:*:*:*:*:* | 4.2.6 rc1 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.7:*:*:*:*:*:*:* | 4.2.7 | Vulnerable | Rails |
| cpe:2.3:a:rubyonrails:rails:4.2.7:rc1:*:*:*:*:*:* | 4.2.7 rc1 | Vulnerable | Rails |
- cpe:2.3:a:rubyonrails:rails:4.2.1:rc2:*:*:*:*:*:* Versions 4.2.1 rc2 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.1:rc3:*:*:*:*:*:* Versions 4.2.1 rc3 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.1:rc4:*:*:*:*:*:* Versions 4.2.1 rc4 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.2:*:*:*:*:*:*:* Versions 4.2.2 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.3:*:*:*:*:*:*:* Versions 4.2.3 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.3:rc1:*:*:*:*:*:* Versions 4.2.3 rc1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.4:*:*:*:*:*:*:* Versions 4.2.4 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.4:rc1:*:*:*:*:*:* Versions 4.2.4 rc1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.5:*:*:*:*:*:*:* Versions 4.2.5 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.5:rc1:*:*:*:*:*:* Versions 4.2.5 rc1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.5:rc2:*:*:*:*:*:* Versions 4.2.5 rc2 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.5.1:*:*:*:*:*:*:* Versions 4.2.5.1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.5.2:*:*:*:*:*:*:* Versions 4.2.5.2 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.6:*:*:*:*:*:*:* Versions 4.2.6 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.6:rc1:*:*:*:*:*:* Versions 4.2.6 rc1 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.7:*:*:*:*:*:*:* Versions 4.2.7 Vulnerable ·Rails
- cpe:2.3:a:rubyonrails:rails:4.2.7:rc1:*:*:*:*:*:* Versions 4.2.7 rc1 Vulnerable ·Rails
Remediation
- Fix · GHSA-pr3r-4wrp-r2pv activerecord (RubyGems) Fixed in 4.2.7.1 Advisory →
Red Hat 1 advisory
- RHSA-2016:1855 Released 2016-09-13 · Red Hat rating Moderaterh-ror42 security update
- Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) rh-ror42-rubygem-actionpack-1:4.2.6-3.el7, rh-ror42-rubygem-actionpack-doc-1:4.2.6-3.el7, rh-ror42-rubygem-actionview-4.2.6-3.el7 +3
- Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.1) rh-ror42-rubygem-actionpack-1:4.2.6-3.el7, rh-ror42-rubygem-actionpack-doc-1:4.2.6-3.el7, rh-ror42-rubygem-actionview-4.2.6-3.el7 +3
- Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.2) rh-ror42-rubygem-actionpack-1:4.2.6-3.el7, rh-ror42-rubygem-actionpack-doc-1:4.2.6-3.el7, rh-ror42-rubygem-actionview-4.2.6-3.el7 +3
- Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) rh-ror42-rubygem-actionpack-1:4.2.6-3.el7, rh-ror42-rubygem-actionpack-doc-1:4.2.6-3.el7, rh-ror42-rubygem-actionview-4.2.6-3.el7 +3
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) | Fixed | RHSA-2016:1855 |
| Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.1) | Fixed | RHSA-2016:1855 |
| Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.2) | Fixed | RHSA-2016:1855 |
| Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) | Fixed | RHSA-2016:1855 |
Not affected: 3 products
- OpenStack Foreman
- Red Hat Software Collections
- Red Hat Subscription Asset Manager
Timeline
- 2026-10-02 Threatist record created from CVE-2016-6317
- 2026-10-03 Alias added: GHSA-pr3r-4wrp-r2pv
- 2026-10-08 EPSS moved to the 90th–95th percentile
References
Advisory 3
Other 6
- http://weblog.rubyonrails.org/2016/8/11/Rails-5-0-0-1-4-2-7-2-and-3-2-22-3-have-been-released/
- [ruby-security-ann] 20160811 [CVE-2016-6317] Unsafe Query Generation Risk in Active Record
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/activerecord/CVE-2016-6317.yml
- https://groups.google.com/forum/#!topic/ruby-security-ann/WccgKSKiPZA
- https://groups.google.com/forum/#!topic/rubyonrails-security/rgO20zYW33s
- http://weblog.rubyonrails.org/2016/8/11/Rails-5-0-0-1-4-2-7-2-and-3-2-22-3-have-been-released
More Rails vulnerabilities
- TI-2014-00124 Directory traversal vulnerability in actionpack/lib/abstract_controller/base.rb in the… KEVCVSS 3.1HIGH 7.5
- TI-2019-03828 Path traversal in Rails https://github.com/rails/rails KEVCVSS 3.1HIGH 7.5
- TI-2016-00672 Directory traversal vulnerability in Action View in Ruby on Rails before 3.2.22.1, 4.0.x… KEVCVSS 3.1HIGH 7.5
- TI-2019-03830 Command injection in Rails https://github.com/rails/rails CVSS 3.1CRITICAL 9.8
- TI-2020-06581 Code injection in https://github.com/rails/rails CVSS 3.1HIGH 8.8
- TI-2013-00091 active_support/core_ext/hash/conversions.rb in Ruby on Rails before 2.3.15, 3.0.x before… CVSS 2.0HIGH 7.5
Sources
- CVE-2016-6317 · CVE Program
- CVE-2016-6317 · NVD
- FIRST EPSS
- GHSA-pr3r-4wrp-r2pv · GitHub Advisory Database · CC BY 4.0
- CVE-2016-6317 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences