—–BEGIN PGP SIGNED MESSAGE—–
Hash: SHA1
=====================================================================
Red Hat Security Advisory
Synopsis: Important: ruby security update
Advisory ID: RHSA-2018:0378-01
Product: Red Hat Enterprise Linux
Advisory URL: https://access.redhat.com/errata/RHSA-2018:0378
Issue date: 2018-02-28
CVE Names: CVE-2017-0898 CVE-2017-0899 CVE-2017-0900
CVE-2017-0901 CVE-2017-0902 CVE-2017-0903
CVE-2017-10784 CVE-2017-14033 CVE-2017-14064
CVE-2017-17405 CVE-2017-17790
=====================================================================
1. Summary:
An update for ruby is now available for Red Hat Enterprise Linux 7.
Red Hat Product Security has rated this update as having a security impact
of Important. A Common Vulnerability Scoring System (CVSS) base score,
which gives a detailed severity rating, is available for each vulnerability
from the CVE link(s) in the References section.
2. Relevant releases/architectures:
Red Hat Enterprise Linux Client (v. 7) – noarch, x86_64
Red Hat Enterprise Linux Client Optional (v. 7) – noarch, x86_64
Red Hat Enterprise Linux ComputeNode (v. 7) – noarch, x86_64
Red Hat Enterprise Linux ComputeNode Optional (v. 7) – noarch, x86_64
Red Hat Enterprise Linux Server (v. 7) – noarch, ppc64, ppc64le, s390x, x86_64
Red Hat Enterprise Linux Server Optional (v. 7) – noarch, ppc64, ppc64le, s390x, x86_64
Red Hat Enterprise Linux Workstation (v. 7) – noarch, x86_64
Red Hat Enterprise Linux Workstation Optional (v. 7) – noarch, x86_64
Red Hat Enterprise Linux for ARM and IBM Power LE (POWER9) Server (v. 7) – aarch64, noarch, ppc64le
Red Hat Enterprise Linux for ARM and IBM Power LE (POWER9) Server Optional (v. 7) – aarch64, noarch, ppc64le
3. Description:
Ruby is an extensible, interpreted, object-oriented, scripting language. It
has features to process text files and to perform system management tasks.
Security Fix(es):
* It was discovered that the Net::FTP module did not properly process
filenames in combination with certain operations. A remote attacker could
exploit this flaw to execute arbitrary commands by setting up a malicious
FTP server and tricking a user or Ruby application into downloading files
with specially crafted names using the Net::FTP module. (CVE-2017-17405)
* A buffer underflow was found in ruby’s sprintf function. An attacker,
with ability to control its format string parameter, could send a specially
crafted string that would disclose heap memory or crash the interpreter.
(CVE-2017-0898)
* It was found that rubygems did not sanitize gem names during installation
of a given gem. A specially crafted gem could use this flaw to install
files outside of the regular directory. (CVE-2017-0901)
* A vulnerability was found where rubygems did not sanitize DNS responses
when requesting the hostname of the rubygems server for a domain, via a
_rubygems._tcp DNS SRV query. An attacker with the ability to manipulate
DNS responses could direct the gem command towards a different domain.
(CVE-2017-0902)
* A vulnerability was found where the rubygems module was vulnerable to an
unsafe YAML deserialization when inspecting a gem. Applications inspecting
gem files without installing them can be tricked to execute arbitrary code
in the context of the ruby interpreter. (CVE-2017-0903)
* It was found that WEBrick did not sanitize all its log messages. If logs
were printed in a terminal, an attacker could interact with the terminal
via the use of escape sequences. (CVE-2017-10784)
* It was found that the decode method of the OpenSSL::ASN1 module was
vulnerable to buffer underrun. An attacker could pass a specially crafted
string to the application in order to crash the ruby interpreter, causing a
denial of service. (CVE-2017-14033)
* A vulnerability was found where rubygems did not properly sanitize gems’
specification text. A specially crafted gem could interact with the
terminal via the use of escape sequences. (CVE-2017-0899)
* It was found that rubygems could use an excessive amount of CPU while
parsing a sufficiently long gem summary. A specially crafted gem from a gem
repository could freeze gem commands attempting to parse its summary.
(CVE-2017-0900)
* A buffer overflow vulnerability was found in the JSON extension of ruby.
An attacker with the ability to pass a specially crafted JSON input to the
extension could use this flaw to expose the interpreter’s heap memory.
(CVE-2017-14064)
* The “lazy_initialize” function in lib/resolv.rb did not properly process
certain filenames. A remote attacker could possibly exploit this flaw to
inject and execute arbitrary commands. (CVE-2017-17790)
4. Solution:
For details on how to apply this update, which includes the changes
described in this advisory, refer to:
https://access.redhat.com/articles/11258
5. Bugs fixed (https://bugzilla.redhat.com/):
1487552 – CVE-2017-14064 ruby: Arbitrary heap exposure during a JSON.generate call
1487587 – CVE-2017-0901 rubygems: Arbitrary file overwrite due to incorrect validation of specification name
1487588 – CVE-2017-0900 rubygems: No size limit in summary length of gem spec
1487589 – CVE-2017-0902 rubygems: DNS hijacking vulnerability
1487590 – CVE-2017-0899 rubygems: Escape sequence in the “summary” field of gemspec
1491866 – CVE-2017-14033 ruby: Buffer underrun in OpenSSL ASN1 decode
1492012 – CVE-2017-10784 ruby: Escape sequence injection vulnerability in the Basic authentication of WEBrick
1492015 – CVE-2017-0898 ruby: Buffer underrun vulnerability in Kernel.sprintf
1500488 – CVE-2017-0903 rubygems: Unsafe object deserialization through YAML formatted gem specifications
1526189 – CVE-2017-17405 ruby: Command injection vulnerability in Net::FTP
1528218 – CVE-2017-17790 ruby: Command injection in lib/resolv.rb:lazy_initialize() allows arbitrary code execution
6. Package List:
Red Hat Enterprise Linux Client (v. 7):
Source:
ruby-2.0.0.648-33.el7_4.src.rpm
noarch:
ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
rubygems-2.0.14.1-33.el7_4.noarch.rpm
x86_64:
ruby-2.0.0.648-33.el7_4.x86_64.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.i686.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-libs-2.0.0.648-33.el7_4.i686.rpm
ruby-libs-2.0.0.648-33.el7_4.x86_64.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.x86_64.rpm
rubygem-io-console-0.4.2-33.el7_4.x86_64.rpm
rubygem-json-1.7.7-33.el7_4.x86_64.rpm
rubygem-psych-2.0.0-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux Client Optional (v. 7):
noarch:
ruby-doc-2.0.0.648-33.el7_4.noarch.rpm
rubygem-minitest-4.3.2-33.el7_4.noarch.rpm
rubygem-rake-0.9.6-33.el7_4.noarch.rpm
rubygems-devel-2.0.14.1-33.el7_4.noarch.rpm
x86_64:
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-devel-2.0.0.648-33.el7_4.x86_64.rpm
ruby-tcltk-2.0.0.648-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux ComputeNode (v. 7):
Source:
ruby-2.0.0.648-33.el7_4.src.rpm
noarch:
ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
rubygems-2.0.14.1-33.el7_4.noarch.rpm
x86_64:
ruby-2.0.0.648-33.el7_4.x86_64.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.i686.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-libs-2.0.0.648-33.el7_4.i686.rpm
ruby-libs-2.0.0.648-33.el7_4.x86_64.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.x86_64.rpm
rubygem-io-console-0.4.2-33.el7_4.x86_64.rpm
rubygem-json-1.7.7-33.el7_4.x86_64.rpm
rubygem-psych-2.0.0-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux ComputeNode Optional (v. 7):
noarch:
ruby-doc-2.0.0.648-33.el7_4.noarch.rpm
rubygem-minitest-4.3.2-33.el7_4.noarch.rpm
rubygem-rake-0.9.6-33.el7_4.noarch.rpm
rubygems-devel-2.0.14.1-33.el7_4.noarch.rpm
x86_64:
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-devel-2.0.0.648-33.el7_4.x86_64.rpm
ruby-tcltk-2.0.0.648-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux Server (v. 7):
Source:
ruby-2.0.0.648-33.el7_4.src.rpm
noarch:
ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
rubygems-2.0.14.1-33.el7_4.noarch.rpm
ppc64:
ruby-2.0.0.648-33.el7_4.ppc64.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.ppc.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.ppc64.rpm
ruby-libs-2.0.0.648-33.el7_4.ppc.rpm
ruby-libs-2.0.0.648-33.el7_4.ppc64.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.ppc64.rpm
rubygem-io-console-0.4.2-33.el7_4.ppc64.rpm
rubygem-json-1.7.7-33.el7_4.ppc64.rpm
rubygem-psych-2.0.0-33.el7_4.ppc64.rpm
ppc64le:
ruby-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-libs-2.0.0.648-33.el7_4.ppc64le.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.ppc64le.rpm
rubygem-io-console-0.4.2-33.el7_4.ppc64le.rpm
rubygem-json-1.7.7-33.el7_4.ppc64le.rpm
rubygem-psych-2.0.0-33.el7_4.ppc64le.rpm
s390x:
ruby-2.0.0.648-33.el7_4.s390x.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.s390.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.s390x.rpm
ruby-libs-2.0.0.648-33.el7_4.s390.rpm
ruby-libs-2.0.0.648-33.el7_4.s390x.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.s390x.rpm
rubygem-io-console-0.4.2-33.el7_4.s390x.rpm
rubygem-json-1.7.7-33.el7_4.s390x.rpm
rubygem-psych-2.0.0-33.el7_4.s390x.rpm
x86_64:
ruby-2.0.0.648-33.el7_4.x86_64.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.i686.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-libs-2.0.0.648-33.el7_4.i686.rpm
ruby-libs-2.0.0.648-33.el7_4.x86_64.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.x86_64.rpm
rubygem-io-console-0.4.2-33.el7_4.x86_64.rpm
rubygem-json-1.7.7-33.el7_4.x86_64.rpm
rubygem-psych-2.0.0-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux for ARM and IBM Power LE (POWER9) Server (v. 7):
Source:
ruby-2.0.0.648-33.el7_4.src.rpm
aarch64:
ruby-2.0.0.648-33.el7_4.aarch64.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.aarch64.rpm
ruby-libs-2.0.0.648-33.el7_4.aarch64.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.aarch64.rpm
rubygem-io-console-0.4.2-33.el7_4.aarch64.rpm
rubygem-json-1.7.7-33.el7_4.aarch64.rpm
rubygem-psych-2.0.0-33.el7_4.aarch64.rpm
noarch:
ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
rubygems-2.0.14.1-33.el7_4.noarch.rpm
ppc64le:
ruby-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-libs-2.0.0.648-33.el7_4.ppc64le.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.ppc64le.rpm
rubygem-io-console-0.4.2-33.el7_4.ppc64le.rpm
rubygem-json-1.7.7-33.el7_4.ppc64le.rpm
rubygem-psych-2.0.0-33.el7_4.ppc64le.rpm
Red Hat Enterprise Linux Server Optional (v. 7):
noarch:
ruby-doc-2.0.0.648-33.el7_4.noarch.rpm
rubygem-minitest-4.3.2-33.el7_4.noarch.rpm
rubygem-rake-0.9.6-33.el7_4.noarch.rpm
rubygems-devel-2.0.14.1-33.el7_4.noarch.rpm
ppc64:
ruby-debuginfo-2.0.0.648-33.el7_4.ppc64.rpm
ruby-devel-2.0.0.648-33.el7_4.ppc64.rpm
ruby-tcltk-2.0.0.648-33.el7_4.ppc64.rpm
ppc64le:
ruby-debuginfo-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-devel-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-tcltk-2.0.0.648-33.el7_4.ppc64le.rpm
s390x:
ruby-debuginfo-2.0.0.648-33.el7_4.s390x.rpm
ruby-devel-2.0.0.648-33.el7_4.s390x.rpm
ruby-tcltk-2.0.0.648-33.el7_4.s390x.rpm
x86_64:
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-devel-2.0.0.648-33.el7_4.x86_64.rpm
ruby-tcltk-2.0.0.648-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux for ARM and IBM Power LE (POWER9) Server Optional (v. 7):
aarch64:
ruby-debuginfo-2.0.0.648-33.el7_4.aarch64.rpm
ruby-devel-2.0.0.648-33.el7_4.aarch64.rpm
ruby-tcltk-2.0.0.648-33.el7_4.aarch64.rpm
noarch:
ruby-doc-2.0.0.648-33.el7_4.noarch.rpm
rubygem-minitest-4.3.2-33.el7_4.noarch.rpm
rubygem-rake-0.9.6-33.el7_4.noarch.rpm
rubygems-devel-2.0.14.1-33.el7_4.noarch.rpm
ppc64le:
ruby-debuginfo-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-devel-2.0.0.648-33.el7_4.ppc64le.rpm
ruby-tcltk-2.0.0.648-33.el7_4.ppc64le.rpm
Red Hat Enterprise Linux Workstation (v. 7):
Source:
ruby-2.0.0.648-33.el7_4.src.rpm
noarch:
ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
rubygems-2.0.14.1-33.el7_4.noarch.rpm
x86_64:
ruby-2.0.0.648-33.el7_4.x86_64.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.i686.rpm
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-libs-2.0.0.648-33.el7_4.i686.rpm
ruby-libs-2.0.0.648-33.el7_4.x86_64.rpm
rubygem-bigdecimal-1.2.0-33.el7_4.x86_64.rpm
rubygem-io-console-0.4.2-33.el7_4.x86_64.rpm
rubygem-json-1.7.7-33.el7_4.x86_64.rpm
rubygem-psych-2.0.0-33.el7_4.x86_64.rpm
Red Hat Enterprise Linux Workstation Optional (v. 7):
noarch:
ruby-doc-2.0.0.648-33.el7_4.noarch.rpm
rubygem-minitest-4.3.2-33.el7_4.noarch.rpm
rubygem-rake-0.9.6-33.el7_4.noarch.rpm
rubygems-devel-2.0.14.1-33.el7_4.noarch.rpm
x86_64:
ruby-debuginfo-2.0.0.648-33.el7_4.x86_64.rpm
ruby-devel-2.0.0.648-33.el7_4.x86_64.rpm
ruby-tcltk-2.0.0.648-33.el7_4.x86_64.rpm
These packages are GPG signed by Red Hat for security. Our key and
details on how to verify the signature are available from
https://access.redhat.com/security/team/key/
7. References:
https://access.redhat.com/security/cve/CVE-2017-0898
https://access.redhat.com/security/cve/CVE-2017-0899
https://access.redhat.com/security/cve/CVE-2017-0900
https://access.redhat.com/security/cve/CVE-2017-0901
https://access.redhat.com/security/cve/CVE-2017-0902
https://access.redhat.com/security/cve/CVE-2017-0903
https://access.redhat.com/security/cve/CVE-2017-10784
https://access.redhat.com/security/cve/CVE-2017-14033
https://access.redhat.com/security/cve/CVE-2017-14064
https://access.redhat.com/security/cve/CVE-2017-17405
https://access.redhat.com/security/cve/CVE-2017-17790
https://access.redhat.com/security/updates/classification/#important
8. Contact:
The Red Hat security contact is <secalert@redhat.com>. More contact
details at https://access.redhat.com/security/team/contact/
Copyright 2018 Red Hat, Inc.
—–BEGIN PGP SIGNATURE—–
Version: GnuPG v1
iD8DBQFalwrFXlSAg2UNWIIRAnihAJ9L2in1RFZ2Ti1nb3cMbjqCk0oOyQCfWW7C
fI9l/f2YXBMzTC+CE3TLRKg=
=ZNrt
—–END PGP SIGNATURE—–
—
RHSA-announce mailing list
RHSA-announce@redhat.com
https://www.redhat.com/mailman/listinfo/rhsa-announce