CVE-2015-1855
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x...
CVE-2015-1855 is a medium vulnerability (CVSS 5.9) in Hackerone Ruby, published April 9, 2015. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 2.81%, the 86th percentile. Fixed in ruby1.8 1.8.7.302-2squeeze4.
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
5.9
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.
- Record
CVE-2015-1855- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - CVSS 2.0
- 4.3 Medium
AV:N/AC:M/Au:N/C:N/I:P/A:N - Weakness
- CWE-20
- Updated
- 2026-11-02
CVE List No score
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.
- Record
CVE-2015-1855- Updated
- 2026-11-02
EUVDEUVD-2015-1964 No score
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.
- Record
EUVD-2015-1964- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-4x8v-74xf-h4g3 No score
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x...
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.
- Record
GHSA-4x8v-74xf-h4g3- Updated
- 2026-11-02
OSVUBUNTU-CVE-2015-1855
5.9
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.
- Record
UBUNTU-CVE-2015-1855- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N - Updated
- 2026-11-02
OSVMGASA-2015-0178 No score
Updated ruby packages fix CVE-2015-1855
Updated ruby packages fix security vulnerability:
Ruby OpenSSL hostname matching implementation violates RFC 6125 (CVE-2015-1855).
The ruby package has been updated to version 2.0.0-p645, which fixes this issue.
- Record
MGASA-2015-0178- Updated
- 2026-11-02
Show 6 moreShow less
OSVopenSUSE-SU-2024:10090-1 No score
libruby2_3-2_3-2.3.1-1.6 on GA media
These are all security issues fixed in the libruby2_3-2_3-2.3.1-1.6 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:10090-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:10481-1 No score
libruby2_2-2_2-2.2.5-1.5 on GA media
These are all security issues fixed in the libruby2_2-2_2-2.2.5-1.5 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:10481-1- Updated
- 2026-11-02
OSVSUSE-SU-2015:1889-1 No score
Security update for ruby19
ruby19 was updated to fix two security issues.
The following vulnerabilities were fixed:
- CVE-2015-1855: Ruby OpenSSL hostname verification was too permissive (bsc#926974).
- CVE-2009-5147: DL::dlopen could have loaded a library with tainted library name even if $SAFE > 0 (bsc#939860).
- Record
SUSE-SU-2015:1889-1- Updated
- 2026-11-02
OSVSUSE-SU-2017:0948-1 No score
Security update for ruby
This update for ruby fixes the following issues:
Secuirty issues fixed:
- CVE-2015-1855: Ruby OpenSSL Hostname Verification (bsc#926974)
- CVE-2015-7551: Unsafe tainted string usage in Fiddle and DL (bsc#959495)
Bugfixes:
- fix small mistake in the backport for (bsc#986630)
- Record
SUSE-SU-2017:0948-1- Updated
- 2026-11-02
OSVSUSE-SU-2017:1067-1 No score
Security update for ruby2.1
This ruby2.1 update to version 2.1.9 fixes the following issues:
Security issues fixed:
- CVE-2016-2339: heap overflow vulnerability in the Fiddle::Function.new'initialize' (bsc#1018808)
- CVE-2015-7551: Unsafe tainted string usage in Fiddle and DL (bsc#959495)
- CVE-2015-3900: hostname validation does not work when fetching gems or making API requests (bsc#936032)
- CVE-2015-1855: Ruby'a OpenSSL extension suffers a vulnerability through overly permissive matching of hostnames (bsc#926974)
- CVE-2014-4975: off-by-one stack-based buffer overflow in the encodes() function (bsc#887877)
Bugfixes:
- SUSEconnect doesn't handle domain wildcards in no_proxy environment variable properly (bsc#1014863)
- Segmentation fault after pack & ioctl & unpack (bsc#909695)
- Ruby:HTTP Header injection in 'net/http' (bsc#986630)
ChangeLog:
- Record
SUSE-SU-2017:1067-1- Updated
- 2026-11-02
OSVUSN-3365-1 No score
ruby1.9.1, ruby2.0, ruby2.3 vulnerabilities
It was discovered that Ruby DL::dlopen incorrectly handled opening libraries. An attacker could possibly use this issue to open libraries with tainted names. This issue only applied to Ubuntu 14.04 LTS. (CVE-2009-5147)
Tony Arcieri, Jeffrey Walton, and Steffan Ullrich discovered that the Ruby OpenSSL extension incorrectly handled hostname wildcard matching. This issue only applied to Ubuntu 14.04 LTS. (CVE-2015-1855)
Christian Hofstaedtler discovered that Ruby Fiddle::Handle incorrectly handled certain crafted strings. An attacker could use this issue to cause a denial of service, or possibly execute arbitrary code. This issue only applied to Ubuntu 14.04 LTS. (CVE-2015-7551)
It was discovered that Ruby Net::SMTP incorrectly handled CRLF sequences. A remote attacker could possibly use this issue to inject SMTP commands. (CVE-2015-9096)
Marcin Noga discovered that Ruby incorrectly handled certain arguments in a TclTkIp class method. An attacker could possibly use this issue to execute arbitrary code. This issue only affected Ubuntu 14.04 LTS. (CVE-2016-2337)
It was discovered that Ruby Fiddle::Function.new incorrectly handled certain arguments. An attacker could possibly use this issue to execute arbitrary code. This issue only affected Ubuntu 14.04 LTS. (CVE-2016-2339)
It was discovered that Ruby incorrectly handled the initialization vector (IV) in GCM mode. An attacker could possibly use this issue to bypass encryption. (CVE-2016-7798)
- Record
USN-3365-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
ruby1.8Debian:6.0 |
before 1.8.7.302-2squeeze4, plus listed versions 1.8.7.302-21.8.7.302-2squeeze11.8.7.302-2squeeze21.8.7.302-2squeeze3 |
1.8.7.302-2squeeze4 |
ruby1.9.1Debian:6.0 |
before 1.9.2.0-2+deb6u4, plus listed versions 1.9.2.0-21.9.2.0-2+armhf |
1.9.2.0-2+deb6u4 |
ruby1.8Debian:7 |
before 1.8.7.358-7.1+deb7u3, plus listed versions 1.8.7.358-71.8.7.358-7.11.8.7.358-7.1+deb7u11.8.7.358-7.1+deb7u2 |
1.8.7.358-7.1+deb7u3 |
ruby1.9.1Debian:7 |
before 1.9.3.194-8.1+deb7u5, plus listed versions 1.9.3.194-8.11.9.3.194-8.1+deb7u11.9.3.194-8.1+deb7u21.9.3.194-8.1+deb7u3 |
1.9.3.194-8.1+deb7u5 |
ruby2.1Debian:8 |
before 2.1.5-2+deb8u1, plus listed versions 2.1.5-2 |
2.1.5-2+deb8u1 |
rubyMageia:4 |
before 2.0.0.p645-1.mga4 | 2.0.0.p645-1.mga4 |
ruby19SUSE:Studio Onsite 1.3 |
before 1.9.3.p392-0.23.1 | 1.9.3.p392-0.23.1 |
rubySUSE:Linux Enterprise Software Development Kit 11 SP4 |
before 1.8.7.p357-0.9.19.1 | 1.8.7.p357-0.9.19.1 |
rubySUSE:Lifecycle Management Server 1.3 |
before 1.8.7.p357-0.9.19.1 | 1.8.7.p357-0.9.19.1 |
rubySUSE:Linux Enterprise Server 11 SP4 |
before 1.8.7.p357-0.9.19.1 | 1.8.7.p357-0.9.19.1 |
Show 17 moreShow less
| Package | Affected | Fixed |
|---|---|---|
rubySUSE:Linux Enterprise Server for SAP Applications 11 SP4 |
before 1.8.7.p357-0.9.19.1 | 1.8.7.p357-0.9.19.1 |
rubySUSE:Studio Onsite 1.3 |
before 1.8.7.p357-0.9.19.1 | 1.8.7.p357-0.9.19.1 |
rubySUSE:WebYast 1.3 |
before 1.8.7.p357-0.9.19.1 | 1.8.7.p357-0.9.19.1 |
ruby2.1SUSE:Linux Enterprise Desktop 12 SP1 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Desktop 12 SP2 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Software Development Kit 12 SP1 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Software Development Kit 12 SP2 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Server 12 SP1 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Server for SAP Applications 12 SP1 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Server 12 SP2 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby2.1SUSE:Linux Enterprise Server for SAP Applications 12 SP2 |
before 2.1.9-15.1 | 2.1.9-15.1 |
ruby1.9.1Ubuntu:14.04:LTS |
before 1.9.3.484-2ubuntu1.3, plus listed versions 1.9.3.194-8.1ubuntu21.9.3.448-1ubuntu11.9.3.448-1ubuntu21.9.3.484-1ubuntu11.9.3.484-1ubuntu21.9.3.484-2ubuntu11.9.3.484-2ubuntu1.11.9.3.484-2ubuntu1.2 |
1.9.3.484-2ubuntu1.3 |
ruby2.0Ubuntu:14.04:LTS |
before 2.0.0.484-1ubuntu2.4, plus listed versions 2.0.0.299-22.0.0.343-12.0.0.343-1ubuntu12.0.0.353-12.0.0.353-1ubuntu1 Show 4 moreShow less2.0.0.484-1ubuntu12.0.0.484-1ubuntu22.0.0.484-1ubuntu2.12.0.0.484-1ubuntu2.2 |
2.0.0.484-1ubuntu2.4 |
ruby2.3Ubuntu:16.04:LTS |
before 2.3.1-2~16.04.2, plus listed versions 2.3.0-12.3.0-22.3.0-4ubuntu22.3.0-4ubuntu32.3.0-5ubuntu12.3.1-2~16.04 |
2.3.1-2~16.04.2 |
ruby2.3openSUSE:Tumbleweed |
before 2.3.1-1.6 | 2.3.1-1.6 |
ruby2.2openSUSE:Tumbleweed |
before 2.2.5-1.5 | 2.2.5-1.5 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | vpereira/CVE-2015-1855 | 2017-03-14 |
History
| When | Changed | Sources |
|---|---|---|
| 2026-11-03 | aliases, products | EUVD |
| 2026-11-02 | created | CVE List, GitHub Advisories, NVD, OSV, PoC in GitHub |
References
debian.org/security/2015/dsa-3247
debian.org/security/2015/dsa-3245
debian.org/security/2015/dsa-3246
ruby-lang.org/en/news/2015/04/13/ruby-openssl-hostname-matching-vulnerability
puppetlabs.com/security/cve/cve-2015-1855
bugs.ruby-lang.org/issues/9644
Show 33 moreShow less
nvd.nist.gov/vuln/detail/CVE-2015-1855
github.com/advisories/GHSA-4x8v-74xf-h4g3
advisories.mageia.org/MGASA-2015-0178.html
bugs.mageia.org/show_bug.cgi?id=15699
ruby-lang.org/en/news/2015/04/13/ruby-2-0-0-p645-released
lists.fedoraproject.org/pipermail/package-announce/2015-April/156431.html
suse.com/support/update/announcement/2015/suse-su-20151889-1
bugzilla.suse.com/926974
bugzilla.suse.com/939860
suse.com/security/cve/CVE-2009-5147
suse.com/security/cve/CVE-2015-1855
suse.com/support/update/announcement/2017/suse-su-20170948-1
bugzilla.suse.com/959495
bugzilla.suse.com/986630
suse.com/security/cve/CVE-2015-7551
suse.com/support/update/announcement/2017/suse-su-20171067-1
bugzilla.suse.com/1014863
bugzilla.suse.com/1018808
bugzilla.suse.com/887877
bugzilla.suse.com/909695
bugzilla.suse.com/936032
suse.com/security/cve/CVE-2014-4975
suse.com/security/cve/CVE-2015-3900
suse.com/security/cve/CVE-2016-2339
ubuntu.com/security/CVE-2015-1855
ubuntu.com/security/notices/USN-3365-1
cve.org/CVERecord?id=CVE-2015-1855
ubuntu.com/security/CVE-2009-5147
ubuntu.com/security/CVE-2015-7551
ubuntu.com/security/CVE-2015-9096
ubuntu.com/security/CVE-2016-2337
ubuntu.com/security/CVE-2016-2339
ubuntu.com/security/CVE-2016-7798