CVE-2018-16395
ruby: OpenSSL::X509:: Name equality check does not work correctly
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD, GHSA, CBL-Mariner, Photon OS, Ruby Advisory DB. Rated lower by Red Hat (high), Amazon (high), Oracle (high), Ubuntu (medium).
Description
An issue was discovered in the OpenSSL library in Ruby before 2.3.8, 2.4.x before 2.4.5, 2.5.x before 2.5.2, and 2.6.x before 2.6.0-preview3. When two OpenSSL::X509::Name objects are compared using ==, depending on the ordering, non-equal objects may return true. When the first argument is one character longer than the second, or the second argument contains a character that is one less than a character in the same position of the first argument, the result of == will be true. This could be leveraged to create an illegitimate certificate that may be accepted as legitimate and then used in signing or encryption operations.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| CBL-Mariner 1.0 | openssl | 0:1.1.1k-5.cm1 |
| Photon OS 1.0 | ruby | 2.5.3-1.ph1 |
| Photon OS 2.0 | ruby | 2.5.3-1.ph2 |
| Photon OS 3.0 | ruby | 2.5.3-1.ph3 |
| rubygems::GitHub Security Advisory RubyGems | openssl | 2.0.9, 2.1.2 |
| rubygems::Ruby Advisory Database | openssl | >= 2.1.2 |
| alpine 3.11 | ruby | 2.5.2-r0 |
| alpine 3.12 | ruby | 2.5.2-r0 |
| alpine 3.13 | ruby | 2.5.2-r0 |
| alpine 3.14 | ruby | 2.5.2-r0 |
| alpine 3.15 | ruby | 2.5.2-r0 |
| alpine 3.16 | ruby | 2.5.2-r0 |
Show all 105 entries from 41 sources
| Source | Package | Fixed in |
|---|---|---|
| CBL-Mariner 1.0 | openssl | 0:1.1.1k-5.cm1 |
| Photon OS 1.0 | ruby | 2.5.3-1.ph1 |
| Photon OS 2.0 | ruby | 2.5.3-1.ph2 |
| Photon OS 3.0 | ruby | 2.5.3-1.ph3 |
| rubygems::GitHub Security Advisory RubyGems | openssl | 2.0.9, 2.1.2 |
| rubygems::Ruby Advisory Database | openssl | >= 2.1.2 |
| alpine 3.11 | ruby | 2.5.2-r0 |
| alpine 3.12 | ruby | 2.5.2-r0 |
| alpine 3.13 | ruby | 2.5.2-r0 |
| alpine 3.14 | ruby | 2.5.2-r0 |
| alpine 3.15 | ruby | 2.5.2-r0 |
| alpine 3.16 | ruby | 2.5.2-r0 |
| alpine 3.17 | ruby | 2.5.2-r0 |
| alpine 3.18 | ruby | 2.5.2-r0 |
| alpine 3.19 | ruby | 2.5.2-r0 |
| alpine 3.20 | ruby | 2.5.2-r0 |
| alpine 3.21 | ruby | 2.5.2-r0 |
| alpine 3.22 | ruby | 2.5.2-r0 |
| alpine 3.23 | ruby | 2.5.2-r0 |
| alpine 3.24 | ruby | 2.5.2-r0 |
| alpine 3.4 | ruby | 2.3.8-r0 |
| alpine 3.5 | ruby | 2.3.8-r0 |
| alpine 3.6 | ruby | 2.4.5-r0 |
| alpine 3.7 | ruby | 2.4.5-r0 |
| alpine 3.8 | ruby | 2.5.2-r0 |
| alpine 3.9 | ruby | 2.5.2-r0 |
| alpine edge | ruby | 2.5.2-r0 |
| amazon linux 1 | ruby23 | 2.3.8-1.20.amzn1 |
| amazon linux 1 | ruby23-debuginfo | 2.3.8-1.20.amzn1 |
| amazon linux 1 | ruby23-devel | 2.3.8-1.20.amzn1 |
| amazon linux 1 | ruby23-doc | 2.3.8-1.20.amzn1 |
| amazon linux 1 | ruby23-irb | 2.3.8-1.20.amzn1 |
| amazon linux 1 | ruby23-libs | 2.3.8-1.20.amzn1 |
| amazon linux 1 | ruby24 | 2.4.5-1.30.7.amzn1 |
| amazon linux 1 | ruby24-debuginfo | 2.4.5-1.30.7.amzn1 |
| amazon linux 1 | ruby24-devel | 2.4.5-1.30.7.amzn1 |
| amazon linux 1 | ruby24-doc | 2.4.5-1.30.7.amzn1 |
| amazon linux 1 | ruby24-irb | 2.4.5-1.30.7.amzn1 |
| amazon linux 1 | ruby24-libs | 2.4.5-1.30.7.amzn1 |
| amazon linux 1 | rubygem23-bigdecimal | 1.2.8-1.20.amzn1 |
| amazon linux 1 | rubygem23-did_you_mean | 1.0.0-1.20.amzn1 |
| amazon linux 1 | rubygem23-io-console | 0.4.5-1.20.amzn1 |
| amazon linux 1 | rubygem23-json | 1.8.3.1-1.20.amzn1 |
| amazon linux 1 | rubygem23-psych | 2.1.0.1-1.20.amzn1 |
| amazon linux 1 | rubygem24-bigdecimal | 1.3.2-1.30.7.amzn1 |
| amazon linux 1 | rubygem24-did_you_mean | 1.1.0-1.30.7.amzn1 |
| amazon linux 1 | rubygem24-io-console | 0.4.6-1.30.7.amzn1 |
| amazon linux 1 | rubygem24-json | 2.0.4-1.30.7.amzn1 |
| amazon linux 1 | rubygem24-psych | 2.2.2-1.30.7.amzn1 |
| amazon linux 1 | rubygem24-xmlrpc | 0.2.1-1.30.7.amzn1 |
| amazon linux 1 | rubygems23 | 2.5.2.3-1.20.amzn1 |
| amazon linux 1 | rubygems23-devel | 2.5.2.3-1.20.amzn1 |
| amazon linux 1 | rubygems24 | 2.6.14.3-1.30.7.amzn1 |
| amazon linux 1 | rubygems24-devel | 2.6.14.3-1.30.7.amzn1 |
| amazon linux 2 | ruby | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | ruby-debuginfo | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | ruby-devel | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | ruby-doc | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | ruby-irb | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | ruby-libs | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | ruby-tcltk | 2.0.0.648-34.amzn2.0.1 |
| amazon linux 2 | rubygem-bigdecimal | 1.2.0-34.amzn2.0.1 |
| amazon linux 2 | rubygem-io-console | 0.4.2-34.amzn2.0.1 |
| amazon linux 2 | rubygem-json | 1.7.7-34.amzn2.0.1 |
| amazon linux 2 | rubygem-minitest | 4.3.2-34.amzn2.0.1 |
| amazon linux 2 | rubygem-psych | 2.0.0-34.amzn2.0.1 |
| amazon linux 2 | rubygem-rake | 0.9.6-34.amzn2.0.1 |
| amazon linux 2 | rubygem-rdoc | 4.0.0-34.amzn2.0.1 |
| amazon linux 2 | rubygems | 2.0.14.1-34.amzn2.0.1 |
| amazon linux 2 | rubygems-devel | 2.0.14.1-34.amzn2.0.1 |
| debian 8 | ruby2.1 | 2.1.5-2+deb8u6 |
| debian 9 | ruby2.3 | 2.3.3-1+deb9u4 |
| Oracle Linux 7 | ruby | 2.0.0.648-34.el7_6 |
| Oracle Linux 7 | ruby-devel | 2.0.0.648-34.el7_6 |
| Oracle Linux 7 | ruby-doc | 2.0.0.648-34.el7_6 |
| Oracle Linux 7 | ruby-irb | 2.0.0.648-34.el7_6 |
| Oracle Linux 7 | ruby-libs | 2.0.0.648-34.el7_6 |
| Oracle Linux 7 | ruby-tcltk | 2.0.0.648-34.el7_6 |
| Oracle Linux 7 | rubygem-bigdecimal | 1.2.0-34.el7_6 |
| Oracle Linux 7 | rubygem-io-console | 0.4.2-34.el7_6 |
| Oracle Linux 7 | rubygem-json | 1.7.7-34.el7_6 |
| Oracle Linux 7 | rubygem-minitest | 4.3.2-34.el7_6 |
| Oracle Linux 7 | rubygem-psych | 2.0.0-34.el7_6 |
| Oracle Linux 7 | rubygem-rake | 0.9.6-34.el7_6 |
| Oracle Linux 7 | rubygem-rdoc | 4.0.0-34.el7_6 |
| Oracle Linux 7 | rubygems | 2.0.14.1-34.el7_6 |
| Oracle Linux 7 | rubygems-devel | 2.0.14.1-34.el7_6 |
| Red Hat | ruby | no fix listed |
| Red Hat | ruby-devel | no fix listed |
| Red Hat | ruby-docs | no fix listed |
| Red Hat | ruby-irb | no fix listed |
| Red Hat | ruby-libs | no fix listed |
| Red Hat | ruby-rdoc | no fix listed |
| Red Hat | ruby-ri | no fix listed |
| Red Hat | ruby-static | no fix listed |
| Red Hat | ruby-tcltk | no fix listed |
| ubuntu 14.04 | ruby1.9.1 | 1.9.3.484-2ubuntu1.13 |
| ubuntu 14.04 | ruby2.0 | 2.0.0.484-1ubuntu2.11 |
| ubuntu 16.04 | ruby2.3 | 2.3.1-2~16.04.11 |
| ubuntu 16.04-ESM | ruby2.3 | 2.3.1-2~16.04.11 |
| ubuntu 18.04 | ruby2.5 | 2.5.1-1ubuntu1.1 |
| ubuntu 18.04-ESM | ruby2.5 | 2.5.1-1ubuntu1.1 |
| ubuntu 18.10 | ruby2.5 | 2.5.1-5ubuntu4.1 |
| ubuntu 19.04 | ruby2.5 | 2.5.1-6ubuntu3 |
| ubuntu 19.10 | ruby2.5 | 2.5.1-6ubuntu3 |
References
- http://lists.opensuse.org/opensuse-security-announce/2019-07/msg00036.html
- http://www.securitytracker.com/id/1042105
- https://access.redhat.com/errata/RHSA-2018:3729
- https://access.redhat.com/errata/RHSA-2018:3730
- https://access.redhat.com/errata/RHSA-2018:3731
- https://access.redhat.com/errata/RHSA-2018:3738
- https://access.redhat.com/errata/RHSA-2019:1948
- https://access.redhat.com/errata/RHSA-2019:2565
All 36 references
- https://access.redhat.com/security/cve/CVE-2018-16395
- https://github.com/advisories/GHSA-mmrq-6999-72v8
- https://github.com/ruby/openssl/commit/f653cfa43f0f20e8c440122ea982382b6228e7f5
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/openssl/CVE-2018-16395.yml
- https://hackerone.com/reports/387250
- https://linux.oracle.com/cve/CVE-2018-16395.html
- https://linux.oracle.com/errata/ELSA-2018-3738.html
- https://lists.debian.org/debian-lts-announce/2018/10/msg00020.html
- https://nvd.nist.gov/vuln/detail/CVE-2018-16395
- https://security.netapp.com/advisory/ntap-20190221-0002
- https://security.netapp.com/advisory/ntap-20190221-0002/
- https://ubuntu.com/security/notices/USN-3808-1
- https://usn.ubuntu.com/3808-1
- https://usn.ubuntu.com/3808-1/
- https://web.archive.org/web/20211206015239/https://securitytracker.com/id/1042105
- https://www.cve.org/CVERecord?id=CVE-2018-16395
- https://www.debian.org/security/2018/dsa-4332
- https://www.oracle.com/security-alerts/cpujan2020.html
- https://www.ruby-lang.org/en/news/2018/10/17/openssl-x509-name-equality-check-does-not-work-correctly-cve-2018-16395
- https://www.ruby-lang.org/en/news/2018/10/17/openssl-x509-name-equality-check-does-not-work-correctly-cve-2018-16395/
- https://www.ruby-lang.org/en/news/2018/10/17/ruby-2-3-8-released
- https://www.ruby-lang.org/en/news/2018/10/17/ruby-2-3-8-released/
- https://www.ruby-lang.org/en/news/2018/10/17/ruby-2-4-5-released
- https://www.ruby-lang.org/en/news/2018/10/17/ruby-2-4-5-released/
- https://www.ruby-lang.org/en/news/2018/10/17/ruby-2-5-2-released
- https://www.ruby-lang.org/en/news/2018/10/17/ruby-2-5-2-released/
- https://www.ruby-lang.org/en/news/2018/11/06/ruby-2-6-0-preview3-released
- https://www.ruby-lang.org/en/news/2018/11/06/ruby-2-6-0-preview3-released/