RubyGems 2.0.x before 2.0.16, 2.2.x before 2.2.4, and 2.4.x before 2.4.7 does not…
Priority LOW 34CWE-254Published · Updated
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- — Not recorded in CVSS 2.0
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · Partial · None
- Fix status
- Partial Red Hat: 7 fixed, 2 without a fix
Attack profile from CVSS 2.0 · NVD. Fix status from CNA, GitHub and Red Hat.
Summary
RubyGems 2.0.x before 2.0.16, 2.2.x before 2.2.4, and 2.4.x before 2.4.7 does not validate the hostname when fetching gems or making API requests, which allows remote attackers to redirect requests to arbitrary domains via a crafted DNS SRV record, aka a "DNS hijack attack."
Why it matters now
EPSS 0.08871 95th percentileScored 2026-11-07
Fix Partial rubygems-update (RubyGems): 2.0.16, 2.2.4, 2.4.7Red Hat: 1 advisoryRed Hat: 7 fixed, 2 without a fix
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 |
| — | rubygems-update (RubyGems) | 2.0.0 to before 2.0.16 | 2.0.16 | Patch available | GHSA-wp3j-rvfp-624h |
| — | rubygems-update (RubyGems) | 2.2.0 to before 2.2.4 | 2.2.4 | Patch available | GHSA-wp3j-rvfp-624h |
| — | rubygems-update (RubyGems) | 2.4.0 to before 2.4.7 | 2.4.7 | Patch available | GHSA-wp3j-rvfp-624h |
- — Vendor— Affected all versions Fixed in — No fix listed CNA
- rubygems-update (RubyGems) Vendor— Affected 2.0.0 to before 2.0.16 Fixed in 2.0.16 Patch available GHSA-wp3j-rvfp-624h
- rubygems-update (RubyGems) Vendor— Affected 2.2.0 to before 2.2.4 Fixed in 2.2.4 Patch available GHSA-wp3j-rvfp-624h
- rubygems-update (RubyGems) Vendor— Affected 2.4.0 to before 2.4.7 Fixed in 2.4.7 Patch available GHSA-wp3j-rvfp-624h
CPE configurations NVD · 42
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:ruby-lang:ruby:1.9:*:*:*:*:*:*:* | 1.9 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:1.9.1:*:*:*:*:*:*:* | 1.9.1 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:1.9.2:*:*:*:*:*:*:* | 1.9.2 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:1.9.3:*:*:*:*:*:*:* | 1.9.3 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.0.0:*:*:*:*:*:*:* | 2.0.0 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.1:-:*:*:*:*:*:* | 2.1 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.1.1:*:*:*:*:*:*:* | 2.1.1 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.1.2:*:*:*:*:*:*:* | 2.1.2 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.1.3:*:*:*:*:*:*:* | 2.1.3 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.1.4:*:*:*:*:*:*:* | 2.1.4 | Vulnerable | ruby |
- cpe:2.3:a:ruby-lang:ruby:1.9:*:*:*:*:*:*:* Versions 1.9 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:1.9.1:*:*:*:*:*:*:* Versions 1.9.1 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:1.9.2:*:*:*:*:*:*:* Versions 1.9.2 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:1.9.3:*:*:*:*:*:*:* Versions 1.9.3 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.0.0:*:*:*:*:*:*:* Versions 2.0.0 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.1:-:*:*:*:*:*:* Versions 2.1 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.1.1:*:*:*:*:*:*:* Versions 2.1.1 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.1.2:*:*:*:*:*:*:* Versions 2.1.2 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.1.3:*:*:*:*:*:*:* Versions 2.1.3 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.1.4:*:*:*:*:*:*:* Versions 2.1.4 Vulnerable ·ruby
Show 32 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:ruby-lang:ruby:2.1.5:*:*:*:*:*:*:* | 2.1.5 | Vulnerable | ruby |
| cpe:2.3:a:ruby-lang:ruby:2.2.0:*:*:*:*:*:*:* | 2.2.0 | Vulnerable | ruby |
| cpe:2.3:a:rubygems:rubygems:2.0.0:*:*:*:*:*:*:* | 2.0.0 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.1:*:*:*:*:*:*:* | 2.0.1 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.2:*:*:*:*:*:*:* | 2.0.2 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.3:*:*:*:*:*:*:* | 2.0.3 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.4:*:*:*:*:*:*:* | 2.0.4 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.5:*:*:*:*:*:*:* | 2.0.5 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.6:*:*:*:*:*:*:* | 2.0.6 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.7:*:*:*:*:*:*:* | 2.0.7 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.8:*:*:*:*:*:*:* | 2.0.8 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.9:*:*:*:*:*:*:* | 2.0.9 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.10:*:*:*:*:*:*:* | 2.0.10 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.11:*:*:*:*:*:*:* | 2.0.11 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.12:*:*:*:*:*:*:* | 2.0.12 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.13:*:*:*:*:*:*:* | 2.0.13 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.14:*:*:*:*:*:*:* | 2.0.14 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.0.15:*:*:*:*:*:*:* | 2.0.15 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.2.0:*:*:*:*:*:*:* | 2.2.0 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.2.1:*:*:*:*:*:*:* | 2.2.1 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.2.2:*:*:*:*:*:*:* | 2.2.2 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.2.3:*:*:*:*:*:*:* | 2.2.3 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.0:*:*:*:*:*:*:* | 2.4.0 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.1:*:*:*:*:*:*:* | 2.4.1 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.2:*:*:*:*:*:*:* | 2.4.2 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.3:*:*:*:*:*:*:* | 2.4.3 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.4:*:*:*:*:*:*:* | 2.4.4 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.5:*:*:*:*:*:*:* | 2.4.5 | Vulnerable | rubygems |
| cpe:2.3:a:rubygems:rubygems:2.4.6:*:*:*:*:*:*:* | 2.4.6 | Vulnerable | rubygems |
| cpe:2.3:o:oracle:solaris:11.3:*:*:*:*:*:*:* | 11.3 | Vulnerable | Oracle |
| cpe:2.3:o:redhat:enterprise_linux:6.0:*:*:*:*:*:*:* | 6.0 | Vulnerable | Red Hat |
| cpe:2.3:o:redhat:enterprise_linux:7.0:*:*:*:*:*:*:* | 7.0 | Vulnerable | Red Hat |
- cpe:2.3:a:ruby-lang:ruby:2.1.5:*:*:*:*:*:*:* Versions 2.1.5 Vulnerable ·ruby
- cpe:2.3:a:ruby-lang:ruby:2.2.0:*:*:*:*:*:*:* Versions 2.2.0 Vulnerable ·ruby
- cpe:2.3:a:rubygems:rubygems:2.0.0:*:*:*:*:*:*:* Versions 2.0.0 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.1:*:*:*:*:*:*:* Versions 2.0.1 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.2:*:*:*:*:*:*:* Versions 2.0.2 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.3:*:*:*:*:*:*:* Versions 2.0.3 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.4:*:*:*:*:*:*:* Versions 2.0.4 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.5:*:*:*:*:*:*:* Versions 2.0.5 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.6:*:*:*:*:*:*:* Versions 2.0.6 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.7:*:*:*:*:*:*:* Versions 2.0.7 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.8:*:*:*:*:*:*:* Versions 2.0.8 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.9:*:*:*:*:*:*:* Versions 2.0.9 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.10:*:*:*:*:*:*:* Versions 2.0.10 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.11:*:*:*:*:*:*:* Versions 2.0.11 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.12:*:*:*:*:*:*:* Versions 2.0.12 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.13:*:*:*:*:*:*:* Versions 2.0.13 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.14:*:*:*:*:*:*:* Versions 2.0.14 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.0.15:*:*:*:*:*:*:* Versions 2.0.15 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.2.0:*:*:*:*:*:*:* Versions 2.2.0 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.2.1:*:*:*:*:*:*:* Versions 2.2.1 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.2.2:*:*:*:*:*:*:* Versions 2.2.2 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.2.3:*:*:*:*:*:*:* Versions 2.2.3 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.0:*:*:*:*:*:*:* Versions 2.4.0 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.1:*:*:*:*:*:*:* Versions 2.4.1 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.2:*:*:*:*:*:*:* Versions 2.4.2 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.3:*:*:*:*:*:*:* Versions 2.4.3 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.4:*:*:*:*:*:*:* Versions 2.4.4 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.5:*:*:*:*:*:*:* Versions 2.4.5 Vulnerable ·rubygems
- cpe:2.3:a:rubygems:rubygems:2.4.6:*:*:*:*:*:*:* Versions 2.4.6 Vulnerable ·rubygems
- cpe:2.3:o:oracle:solaris:11.3:*:*:*:*:*:*:* Versions 11.3 Vulnerable ·Oracle
- cpe:2.3:o:redhat:enterprise_linux:6.0:*:*:*:*:*:*:* Versions 6.0 Vulnerable ·Red Hat
- cpe:2.3:o:redhat:enterprise_linux:7.0:*:*:*:*:*:*:* Versions 7.0 Vulnerable ·Red Hat
Remediation
- Fix · GHSA-wp3j-rvfp-624h rubygems-update (RubyGems) Fixed in 2.0.16 Advisory →
- Fix · GHSA-wp3j-rvfp-624h rubygems-update (RubyGems) Fixed in 2.2.4 Advisory →
- Fix · GHSA-wp3j-rvfp-624h rubygems-update (RubyGems) Fixed in 2.4.7 Advisory →
Red Hat 1 advisory
- RHSA-2015:1657 Released 2015-08-24 · Red Hat rating Importantrh-ruby22-ruby security update
- Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 6) rh-ruby22-ruby-2.2.2-12.el6, rh-ruby22-ruby-devel-2.2.2-12.el6, rh-ruby22-ruby-doc-2.2.2-12.el6 +14
- Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) rh-ruby22-ruby-2.2.2-12.el7, rh-ruby22-ruby-devel-2.2.2-12.el7, rh-ruby22-ruby-doc-2.2.2-12.el7 +14
- Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 6.5) rh-ruby22-ruby-2.2.2-12.el6, rh-ruby22-ruby-devel-2.2.2-12.el6, rh-ruby22-ruby-doc-2.2.2-12.el6 +14
- Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 6.6) rh-ruby22-ruby-2.2.2-12.el6, rh-ruby22-ruby-devel-2.2.2-12.el6, rh-ruby22-ruby-doc-2.2.2-12.el6 +14
- Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.1) rh-ruby22-ruby-2.2.2-12.el7, rh-ruby22-ruby-devel-2.2.2-12.el7, rh-ruby22-ruby-doc-2.2.2-12.el7 +14
- Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 6) rh-ruby22-ruby-2.2.2-12.el6, rh-ruby22-ruby-devel-2.2.2-12.el6, rh-ruby22-ruby-doc-2.2.2-12.el6 +14
- Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) rh-ruby22-ruby-2.2.2-12.el7, rh-ruby22-ruby-devel-2.2.2-12.el7, rh-ruby22-ruby-doc-2.2.2-12.el7 +14
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 7 | Affected | No fix planned: Will not fix |
| Red Hat Software Collections | Affected | No fix planned: Will not fix |
| Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 6) | Fixed | RHSA-2015:1657 |
| Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) | Fixed | RHSA-2015:1657 |
| Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 6.5) | Fixed | RHSA-2015:1657 |
| Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 6.6) | Fixed | RHSA-2015:1657 |
| Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.1) | Fixed | RHSA-2015:1657 |
| Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 6) | Fixed | RHSA-2015:1657 |
| Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) | Fixed | RHSA-2015:1657 |
Not affected: 10 products
- CloudForms Management Engine 5
- OpenStack Foreman
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux OpenStack Platform 5 (Icehouse)
- Red Hat Enterprise MRG 2
- Red Hat OpenShift Enterprise 2
- Red Hat Satellite 6
- Red Hat Software Collections
- Red Hat Subscription Asset Manager
Timeline
- 2026-10-02 Threatist record created from CVE-2015-3900
- 2026-10-03 Alias added: GHSA-wp3j-rvfp-624h
References
Advisory 9
- RHSA-2015:1657
- FEDORA-2015-12501
- FEDORA-2015-12574
- [oss-security] 20150626 rubygems <2.4.8 vulnerable to DNS request hijacking (CVE-2015-3900 and CVE-2015-4020)
- https://www.trustwave.com/Resources/SpiderLabs-Blog/Attacking-Ruby-Gem-Security-with-CVE-2015-3900/
- https://www.trustwave.com/Resources/Security-Advisories/Advisories/TWSL2015-007/?fid=6356
- FEDORA-2015-13157
- http://www.oracle.com/technetwork/topics/security/bulletinoct2015-2511968.html
- https://nvd.nist.gov/vuln/detail/CVE-2015-3900
Other 5
- https://puppet.com/security/cve/CVE-2015-3900
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/rubygems-update/CVE-2015-3900.yml
- https://web.archive.org/web/20170331091241/https://puppet.com/security/cve/CVE-2015-3900
- https://web.archive.org/web/20200228055155/http://www.securityfocus.com/bid/75482
- https://www.trustwave.com/Resources/SpiderLabs-Blog/Attacking-Ruby-Gem-Security-with-CVE-2015-3900
Sources
- CVE-2015-3900 · CVE Program
- CVE-2015-3900 · NVD
- FIRST EPSS
- GHSA-wp3j-rvfp-624h · GitHub Advisory Database · CC BY 4.0
- CVE-2015-3900 · 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