CVE-2015-3900 RubyGems vulnerable to DNS hijack attack
Remote attackers can redirect RubyGems requests to malicious domains via DNS hijacking, potentially leading to data theft or code execution.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2015-3900?
CVE-2015-3900 is a medium-severity vulnerability in Oracle Solaris, published on 24 Jun 2015. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
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."
Weakness: CWE-254
Which versions are affected by CVE-2015-3900?
6 open source packages ship an affected version, including rubygems-update. It affects 4 products.
| Package | Affected | Fixed in |
|---|---|---|
rubygems-update RubyGems | From 2.0.0 | 2.0.16 |
rubygems-update RubyGems | From 2.0.0 | 2.0.16 |
rubygems-update RubyGems | From 2.2.0 | 2.2.4 |
rubygems-update RubyGems | From 2.2.0 | 2.2.4 |
rubygems-update RubyGems | From 2.4.0 | 2.4.7 |
rubygems-update RubyGems | From 2.4.0 | 2.4.7 |
Linux distribution packages (34)
rh-ruby22-ruby Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-ruby-debuginfo Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-ruby-devel Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-ruby-doc Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-ruby-irb Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-ruby-libs Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-ruby-tcltk Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.2.2-12.el6 |
rh-ruby22-rubygem-bigdecimal Red Hat:rhel_software_collections:2::el6 | All versions | 0:1.2.6-12.el6 |
rh-ruby22-rubygem-io-console Red Hat:rhel_software_collections:2::el6 | All versions | 0:0.4.3-12.el6 |
rh-ruby22-rubygem-json Red Hat:rhel_software_collections:2::el6 | All versions | 0:1.8.1-12.el6 |
rh-ruby22-rubygem-minitest Red Hat:rhel_software_collections:2::el6 | All versions | 0:5.4.3-12.el6 |
rh-ruby22-rubygem-power_assert Red Hat:rhel_software_collections:2::el6 | All versions | 0:0.2.2-12.el6 |
rh-ruby22-rubygem-psych Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.0.8-12.el6 |
rh-ruby22-rubygem-rake Red Hat:rhel_software_collections:2::el6 | All versions | 0:10.4.2-12.el6 |
rh-ruby22-rubygem-rdoc Red Hat:rhel_software_collections:2::el6 | All versions | 0:4.2.0-12.el6 |
rh-ruby22-rubygem-test-unit Red Hat:rhel_software_collections:2::el6 | All versions | 0:3.0.8-12.el6 |
rh-ruby22-rubygems Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.4.5-12.el6 |
rh-ruby22-rubygems-devel Red Hat:rhel_software_collections:2::el6 | All versions | 0:2.4.5-12.el6 |
rh-ruby22-ruby Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-ruby-debuginfo Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-ruby-devel Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-ruby-doc Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-ruby-irb Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-ruby-libs Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-ruby-tcltk Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.2.2-12.el7 |
rh-ruby22-rubygem-bigdecimal Red Hat:rhel_software_collections:2::el7 | All versions | 0:1.2.6-12.el7 |
rh-ruby22-rubygem-io-console Red Hat:rhel_software_collections:2::el7 | All versions | 0:0.4.3-12.el7 |
rh-ruby22-rubygem-json Red Hat:rhel_software_collections:2::el7 | All versions | 0:1.8.1-12.el7 |
rh-ruby22-rubygem-minitest Red Hat:rhel_software_collections:2::el7 | All versions | 0:5.4.3-12.el7 |
rh-ruby22-rubygem-power_assert Red Hat:rhel_software_collections:2::el7 | All versions | 0:0.2.2-12.el7 |
rh-ruby22-rubygem-psych Red Hat:rhel_software_collections:2::el7 | All versions | 0:2.0.8-12.el7 |
rh-ruby22-rubygem-rake Red Hat:rhel_software_collections:2::el7 | All versions | 0:10.4.2-12.el7 |
rh-ruby22-rubygem-rdoc Red Hat:rhel_software_collections:2::el7 | All versions | 0:4.2.0-12.el7 |
rh-ruby22-rubygem-test-unit Red Hat:rhel_software_collections:2::el7 | All versions | 0:3.0.8-12.el7 |
Products include Oracle Solaris, Redhat Enterprise Linux, Ruby-Lang Ruby, Rubygems Rubygems.
How do I fix CVE-2015-3900?
Upgrade rubygems-update to a fixed version for your release line: 2.0.16, 2.2.4 or 2.4.7.
Is CVE-2015-3900 being exploited?
There is no known exploitation of CVE-2015-3900 in the wild and no public exploit code.
Other vulnerabilities in Oracle Solaris
Sources
Also known as DEBIAN-CVE-2015-3900, GHSA-wp3j-rvfp-624h, MGASA-2015-0345, RHSA-2015:1657.