what you don't know can hurt you

Red Hat Security Advisory 2018-0378-01

Red Hat Security Advisory 2018-0378-01
Posted Feb 28, 2018
Authored by Red Hat | Site access.redhat.com

Red Hat Security Advisory 2018-0378-01 - Ruby is an extensible, interpreted, object-oriented, scripting language. It has features to process text files and to perform system management tasks. Security Fix: 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.

tags | advisory, remote, arbitrary, ruby
systems | linux, redhat
advisories | 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
MD5 | 91a96a35a620b9a34ddbe39a2533462c

Red Hat Security Advisory 2018-0378-01

Change Mirror Download
-----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
Login or Register to add favorites

File Archive:

July 2020

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Jul 1st
    15 Files
  • 2
    Jul 2nd
    19 Files
  • 3
    Jul 3rd
    12 Files
  • 4
    Jul 4th
    1 Files
  • 5
    Jul 5th
    2 Files
  • 6
    Jul 6th
    25 Files
  • 7
    Jul 7th
    35 Files
  • 8
    Jul 8th
    4 Files
  • 9
    Jul 9th
    9 Files
  • 10
    Jul 10th
    7 Files
  • 11
    Jul 11th
    4 Files
  • 12
    Jul 12th
    4 Files
  • 13
    Jul 13th
    14 Files
  • 14
    Jul 14th
    19 Files
  • 15
    Jul 15th
    11 Files
  • 16
    Jul 16th
    0 Files
  • 17
    Jul 17th
    0 Files
  • 18
    Jul 18th
    0 Files
  • 19
    Jul 19th
    0 Files
  • 20
    Jul 20th
    0 Files
  • 21
    Jul 21st
    0 Files
  • 22
    Jul 22nd
    0 Files
  • 23
    Jul 23rd
    0 Files
  • 24
    Jul 24th
    0 Files
  • 25
    Jul 25th
    0 Files
  • 26
    Jul 26th
    0 Files
  • 27
    Jul 27th
    0 Files
  • 28
    Jul 28th
    0 Files
  • 29
    Jul 29th
    0 Files
  • 30
    Jul 30th
    0 Files
  • 31
    Jul 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2020 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close