Skip to content

CVE-2015-4020 RubyGems Improper Input Validation vulnerability

MediumCVSS 4.3 EPSS 3.5% PoC
Published
Updated
Exploit status
Proof-of-concept only

Description

RubyGems 2.0.x before 2.0.17, 2.2.x before 2.2.5, and 2.4.x before 2.4.8 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 with a domain that is suffixed with the original domain name, aka a "DNS hijack attack." NOTE: this vulnerability exists because to an incomplete fix for CVE-2015-3900.

Affected products

ProductAffected versionsFixed in
rubygems-update(RubyGems) < 2.0.17 2.0.17
rubygems-update(RubyGems) >= 2.1.0.rc.1, < 2.2.5 2.2.5
rubygems-update(RubyGems) >= 2.3.0, < 2.4.8 2.4.8
rubygems-update(RubyGems) = 0.8.10 No fix listed
rubygems-update(RubyGems) = 0.8.11 No fix listed
rubygems-update(RubyGems) = 0.8.3 No fix listed
rubygems-update(RubyGems) = 0.8.4 No fix listed
rubygems-update(RubyGems) = 0.8.5 No fix listed
rubygems-update(RubyGems) = 0.8.6 No fix listed
rubygems-update(RubyGems) = 0.8.8 No fix listed
rubygems-update(RubyGems) = 0.9.0 No fix listed
rubygems-update(RubyGems) = 0.9.1 No fix listed
rubygems-update(RubyGems) = 0.9.2 No fix listed
rubygems-update(RubyGems) = 0.9.3 No fix listed
rubygems-update(RubyGems) = 0.9.4 No fix listed
rubygems-update(RubyGems) = 0.9.5 No fix listed
rubygems-update(RubyGems) = 1.0.0 No fix listed
rubygems-update(RubyGems) = 1.0.1 No fix listed
rubygems-update(RubyGems) = 1.1.0 No fix listed
rubygems-update(RubyGems) = 1.1.1 No fix listed
rubygems-update(RubyGems) = 1.2.0 No fix listed
rubygems-update(RubyGems) = 1.3.0 No fix listed
rubygems-update(RubyGems) = 1.3.1 No fix listed
rubygems-update(RubyGems) = 1.3.2 No fix listed
rubygems-update(RubyGems) = 1.3.3 No fix listed
Show 134 more
ProductAffected versionsFixed in
rubygems-update(RubyGems) = 1.3.4 No fix listed
rubygems-update(RubyGems) = 1.3.5 No fix listed
rubygems-update(RubyGems) = 1.3.6 No fix listed
rubygems-update(RubyGems) = 1.3.7 No fix listed
rubygems-update(RubyGems) = 1.4.0 No fix listed
rubygems-update(RubyGems) = 1.4.1 No fix listed
rubygems-update(RubyGems) = 1.4.2 No fix listed
rubygems-update(RubyGems) = 1.5.0 No fix listed
rubygems-update(RubyGems) = 1.5.2 No fix listed
rubygems-update(RubyGems) = 1.5.3 No fix listed
rubygems-update(RubyGems) = 1.6.0 No fix listed
rubygems-update(RubyGems) = 1.6.1 No fix listed
rubygems-update(RubyGems) = 1.6.2 No fix listed
rubygems-update(RubyGems) = 1.7.0 No fix listed
rubygems-update(RubyGems) = 1.7.1 No fix listed
rubygems-update(RubyGems) = 1.7.2 No fix listed
rubygems-update(RubyGems) = 1.8.0 No fix listed
rubygems-update(RubyGems) = 1.8.1 No fix listed
rubygems-update(RubyGems) = 1.8.10 No fix listed
rubygems-update(RubyGems) = 1.8.11 No fix listed
rubygems-update(RubyGems) = 1.8.12 No fix listed
rubygems-update(RubyGems) = 1.8.13 No fix listed
rubygems-update(RubyGems) = 1.8.14 No fix listed
rubygems-update(RubyGems) = 1.8.15 No fix listed
rubygems-update(RubyGems) = 1.8.16 No fix listed
rubygems-update(RubyGems) = 1.8.17 No fix listed
rubygems-update(RubyGems) = 1.8.18 No fix listed
rubygems-update(RubyGems) = 1.8.19 No fix listed
rubygems-update(RubyGems) = 1.8.2 No fix listed
rubygems-update(RubyGems) = 1.8.20 No fix listed
rubygems-update(RubyGems) = 1.8.21 No fix listed
rubygems-update(RubyGems) = 1.8.22 No fix listed
rubygems-update(RubyGems) = 1.8.23 No fix listed
rubygems-update(RubyGems) = 1.8.23.2 No fix listed
rubygems-update(RubyGems) = 1.8.24 No fix listed
rubygems-update(RubyGems) = 1.8.25 No fix listed
rubygems-update(RubyGems) = 1.8.26 No fix listed
rubygems-update(RubyGems) = 1.8.27 No fix listed
rubygems-update(RubyGems) = 1.8.28 No fix listed
rubygems-update(RubyGems) = 1.8.29 No fix listed
rubygems-update(RubyGems) = 1.8.3 No fix listed
rubygems-update(RubyGems) = 1.8.30 No fix listed
rubygems-update(RubyGems) = 1.8.4 No fix listed
rubygems-update(RubyGems) = 1.8.5 No fix listed
rubygems-update(RubyGems) = 1.8.6 No fix listed
rubygems-update(RubyGems) = 1.8.7 No fix listed
rubygems-update(RubyGems) = 1.8.8 No fix listed
rubygems-update(RubyGems) = 1.8.9 No fix listed
rubygems-update(RubyGems) = 2.0.0 No fix listed
rubygems-update(RubyGems) = 2.0.0.preview2 No fix listed
rubygems-update(RubyGems) = 2.0.0.preview2.1 No fix listed
rubygems-update(RubyGems) = 2.0.0.preview2.2 No fix listed
rubygems-update(RubyGems) = 2.0.0.rc.1 No fix listed
rubygems-update(RubyGems) = 2.0.0.rc.2 No fix listed
rubygems-update(RubyGems) = 2.0.10 No fix listed
rubygems-update(RubyGems) = 2.0.11 No fix listed
rubygems-update(RubyGems) = 2.0.12 No fix listed
rubygems-update(RubyGems) = 2.0.13 No fix listed
rubygems-update(RubyGems) = 2.0.14 No fix listed
rubygems-update(RubyGems) = 2.0.15 No fix listed
rubygems-update(RubyGems) = 2.0.16 No fix listed
rubygems-update(RubyGems) = 2.0.2 No fix listed
rubygems-update(RubyGems) = 2.0.3 No fix listed
rubygems-update(RubyGems) = 2.0.4 No fix listed
rubygems-update(RubyGems) = 2.0.5 No fix listed
rubygems-update(RubyGems) = 2.0.6 No fix listed
rubygems-update(RubyGems) = 2.0.7 No fix listed
rubygems-update(RubyGems) = 2.0.8 No fix listed
rubygems-update(RubyGems) = 2.0.9 No fix listed
rubygems-update(RubyGems) = 2.1.0 No fix listed
rubygems-update(RubyGems) = 2.1.0.rc.1 No fix listed
rubygems-update(RubyGems) = 2.1.0.rc.2 No fix listed
rubygems-update(RubyGems) = 2.1.1 No fix listed
rubygems-update(RubyGems) = 2.1.10 No fix listed
rubygems-update(RubyGems) = 2.1.11 No fix listed
rubygems-update(RubyGems) = 2.1.2 No fix listed
rubygems-update(RubyGems) = 2.1.3 No fix listed
rubygems-update(RubyGems) = 2.1.4 No fix listed
rubygems-update(RubyGems) = 2.1.5 No fix listed
rubygems-update(RubyGems) = 2.1.6 No fix listed
rubygems-update(RubyGems) = 2.1.7 No fix listed
rubygems-update(RubyGems) = 2.1.8 No fix listed
rubygems-update(RubyGems) = 2.1.9 No fix listed
rubygems-update(RubyGems) = 2.2.0 No fix listed
rubygems-update(RubyGems) = 2.2.0.rc.1 No fix listed
rubygems-update(RubyGems) = 2.2.1 No fix listed
rubygems-update(RubyGems) = 2.2.2 No fix listed
rubygems-update(RubyGems) = 2.2.3 No fix listed
rubygems-update(RubyGems) = 2.2.4 No fix listed
rubygems-update(RubyGems) = 2.3.0 No fix listed
rubygems-update(RubyGems) = 2.4.0 No fix listed
rubygems-update(RubyGems) = 2.4.1 No fix listed
rubygems-update(RubyGems) = 2.4.2 No fix listed
rubygems-update(RubyGems) = 2.4.3 No fix listed
rubygems-update(RubyGems) = 2.4.4 No fix listed
rubygems-update(RubyGems) = 2.4.5 No fix listed
rubygems-update(RubyGems) = 2.4.6 No fix listed
rubygems-update(RubyGems) = 2.4.7 No fix listed
oracle solaris = 11.3 No fix listed
rubygems = 2.0.0 No fix listed
rubygems = 2.0.0-preview2 No fix listed
rubygems = 2.0.0-preview2.1 No fix listed
rubygems = 2.0.0-preview2.2 No fix listed
rubygems = 2.0.0-rc1 No fix listed
rubygems = 2.0.0-rc2 No fix listed
rubygems = 2.0.1 No fix listed
rubygems = 2.0.2 No fix listed
rubygems = 2.0.3 No fix listed
rubygems = 2.0.4 No fix listed
rubygems = 2.0.5 No fix listed
rubygems = 2.0.6 No fix listed
rubygems = 2.0.7 No fix listed
rubygems = 2.0.8 No fix listed
rubygems = 2.0.9 No fix listed
rubygems = 2.0.10 No fix listed
rubygems = 2.0.11 No fix listed
rubygems = 2.0.12 No fix listed
rubygems = 2.0.13 No fix listed
rubygems = 2.0.14 No fix listed
rubygems = 2.0.15 No fix listed
rubygems = 2.0.16 No fix listed
rubygems = 2.2.0 No fix listed
rubygems = 2.2.1 No fix listed
rubygems = 2.2.2 No fix listed
rubygems = 2.2.3 No fix listed
rubygems = 2.2.4 No fix listed
rubygems = 2.4.0 No fix listed
rubygems = 2.4.1 No fix listed
rubygems = 2.4.2 No fix listed
rubygems = 2.4.3 No fix listed
rubygems = 2.4.4 No fix listed
rubygems = 2.4.5 No fix listed
rubygems = 2.4.6 No fix listed
rubygems = 2.4.7 No fix listed

References