Articles / Red Hat: Updated ruby packa…

Red Hat: Updated ruby packages fix two security issues

Ruby is an extensible, interpreted, object-oriented, scripting language. It has features to process text files and to do system management tasks. A denial of service flaw was found in the implementation of associative arrays (hashes) in Ruby. An attacker able to supply a large number of inputs to a Ruby application (such as HTTP POST request parameters sent to a web application) that are used as keys when inserting data into an array could trigger multiple hash function collisions, making array operations take an excessive amount of CPU time. It was found that Ruby did not reinitialize the PRNG (pseudorandom number generator) after forking a child process. This could eventually lead to the PRNG returning the same result twice. An attacker keeping track of the values returned by one child process could use this flaw to predict the values the PRNG would return in other child processes (as long as the parent process persisted). Updated packages are available from ftp.redhat.com.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

=====================================================================
                  Red Hat Security Advisory

Synopsis:          Moderate: ruby security update
Advisory ID:       RHSA-2012:0070-01
Product:           Red Hat Enterprise Linux
Advisory URL:      https://rhn.redhat.com/errata/RHSA-2012-0070.html
Issue date:        2012-01-30
CVE Names:         CVE-2011-3009 CVE-2011-4815 
=====================================================================

1. Summary:

Updated ruby packages that fix two security issues are now available for
Red Hat Enterprise Linux 4 and 5.

The Red Hat Security Response Team has rated this update as having moderate
security impact. Common Vulnerability Scoring System (CVSS) base scores,
which give detailed severity ratings, are available for each vulnerability
from the CVE links in the References section.

2. Relevant releases/architectures:

RHEL Desktop Workstation (v. 5 client) - i386, x86_64
Red Hat Enterprise Linux (v. 5 server) - i386, ia64, ppc, s390x, x86_64
Red Hat Enterprise Linux AS version 4 - i386, ia64, ppc, s390, s390x, x86_64
Red Hat Enterprise Linux Desktop (v. 5 client) - i386, x86_64
Red Hat Enterprise Linux Desktop version 4 - i386, x86_64
Red Hat Enterprise Linux ES version 4 - i386, ia64, x86_64
Red Hat Enterprise Linux WS version 4 - i386, ia64, x86_64

3. Description:

Ruby is an extensible, interpreted, object-oriented, scripting language. It
has features to process text files and to do system management tasks.

A denial of service flaw was found in the implementation of associative
arrays (hashes) in Ruby. An attacker able to supply a large number of
inputs to a Ruby application (such as HTTP POST request parameters sent to
a web application) that are used as keys when inserting data into an array
could trigger multiple hash function collisions, making array operations
take an excessive amount of CPU time. To mitigate this issue, randomization
has been added to the hash function to reduce the chance of an attacker
successfully causing intentional collisions. (CVE-2011-4815)

It was found that Ruby did not reinitialize the PRNG (pseudorandom number
generator) after forking a child process. This could eventually lead to the
PRNG returning the same result twice. An attacker keeping track of the
values returned by one child process could use this flaw to predict the
values the PRNG would return in other child processes (as long as the
parent process persisted). (CVE-2011-3009)

Red Hat would like to thank oCERT for reporting CVE-2011-4815. oCERT
acknowledges Julian Wälde and Alexander Klink as the original reporters of
CVE-2011-4815.

All users of ruby are advised to upgrade to these updated packages, which
contain backported patches to resolve these issues.

4. Solution:

Before applying this update, make sure all previously-released errata
relevant to your system have been applied.

This update is available via the Red Hat Network. Details on how to
use the Red Hat Network to apply this update are available at
https://access.redhat.com/kb/docs/DOC-11259

5. Bugs fixed (http://bugzilla.redhat.com/):

722415 - CVE-2011-2686 CVE-2011-2705 CVE-2011-3009 ruby: Properly initialize the random number generator when forking new process
750564 - CVE-2011-4815 ruby: hash table collisions CPU usage DoS (oCERT-2011-003)

6. Package List:

Red Hat Enterprise Linux AS version 4:

Source:
ftp://updates.redhat.com/enterprise/4AS/en/os/SRPMS/ruby-1.8.1-18.el4.src.rpm

i386:
irb-1.8.1-18.el4.i386.rpm
ruby-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-devel-1.8.1-18.el4.i386.rpm
ruby-docs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-mode-1.8.1-18.el4.i386.rpm
ruby-tcltk-1.8.1-18.el4.i386.rpm

ia64:
irb-1.8.1-18.el4.ia64.rpm
ruby-1.8.1-18.el4.ia64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.ia64.rpm
ruby-devel-1.8.1-18.el4.ia64.rpm
ruby-docs-1.8.1-18.el4.ia64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.ia64.rpm
ruby-mode-1.8.1-18.el4.ia64.rpm
ruby-tcltk-1.8.1-18.el4.ia64.rpm

ppc:
irb-1.8.1-18.el4.ppc.rpm
ruby-1.8.1-18.el4.ppc.rpm
ruby-debuginfo-1.8.1-18.el4.ppc.rpm
ruby-debuginfo-1.8.1-18.el4.ppc64.rpm
ruby-devel-1.8.1-18.el4.ppc.rpm
ruby-docs-1.8.1-18.el4.ppc.rpm
ruby-libs-1.8.1-18.el4.ppc.rpm
ruby-libs-1.8.1-18.el4.ppc64.rpm
ruby-mode-1.8.1-18.el4.ppc.rpm
ruby-tcltk-1.8.1-18.el4.ppc.rpm

s390:
irb-1.8.1-18.el4.s390.rpm
ruby-1.8.1-18.el4.s390.rpm
ruby-debuginfo-1.8.1-18.el4.s390.rpm
ruby-devel-1.8.1-18.el4.s390.rpm
ruby-docs-1.8.1-18.el4.s390.rpm
ruby-libs-1.8.1-18.el4.s390.rpm
ruby-mode-1.8.1-18.el4.s390.rpm
ruby-tcltk-1.8.1-18.el4.s390.rpm

s390x:
irb-1.8.1-18.el4.s390x.rpm
ruby-1.8.1-18.el4.s390x.rpm
ruby-debuginfo-1.8.1-18.el4.s390.rpm
ruby-debuginfo-1.8.1-18.el4.s390x.rpm
ruby-devel-1.8.1-18.el4.s390x.rpm
ruby-docs-1.8.1-18.el4.s390x.rpm
ruby-libs-1.8.1-18.el4.s390.rpm
ruby-libs-1.8.1-18.el4.s390x.rpm
ruby-mode-1.8.1-18.el4.s390x.rpm
ruby-tcltk-1.8.1-18.el4.s390x.rpm

x86_64:
irb-1.8.1-18.el4.x86_64.rpm
ruby-1.8.1-18.el4.x86_64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.x86_64.rpm
ruby-devel-1.8.1-18.el4.x86_64.rpm
ruby-docs-1.8.1-18.el4.x86_64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.x86_64.rpm
ruby-mode-1.8.1-18.el4.x86_64.rpm
ruby-tcltk-1.8.1-18.el4.x86_64.rpm

Red Hat Enterprise Linux Desktop version 4:

Source:
ftp://updates.redhat.com/enterprise/4Desktop/en/os/SRPMS/ruby-1.8.1-18.el4.src.rpm

i386:
irb-1.8.1-18.el4.i386.rpm
ruby-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-devel-1.8.1-18.el4.i386.rpm
ruby-docs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-mode-1.8.1-18.el4.i386.rpm
ruby-tcltk-1.8.1-18.el4.i386.rpm

x86_64:
irb-1.8.1-18.el4.x86_64.rpm
ruby-1.8.1-18.el4.x86_64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.x86_64.rpm
ruby-devel-1.8.1-18.el4.x86_64.rpm
ruby-docs-1.8.1-18.el4.x86_64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.x86_64.rpm
ruby-mode-1.8.1-18.el4.x86_64.rpm
ruby-tcltk-1.8.1-18.el4.x86_64.rpm

Red Hat Enterprise Linux ES version 4:

Source:
ftp://updates.redhat.com/enterprise/4ES/en/os/SRPMS/ruby-1.8.1-18.el4.src.rpm

i386:
irb-1.8.1-18.el4.i386.rpm
ruby-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-devel-1.8.1-18.el4.i386.rpm
ruby-docs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-mode-1.8.1-18.el4.i386.rpm
ruby-tcltk-1.8.1-18.el4.i386.rpm

ia64:
irb-1.8.1-18.el4.ia64.rpm
ruby-1.8.1-18.el4.ia64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.ia64.rpm
ruby-devel-1.8.1-18.el4.ia64.rpm
ruby-docs-1.8.1-18.el4.ia64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.ia64.rpm
ruby-mode-1.8.1-18.el4.ia64.rpm
ruby-tcltk-1.8.1-18.el4.ia64.rpm

x86_64:
irb-1.8.1-18.el4.x86_64.rpm
ruby-1.8.1-18.el4.x86_64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.x86_64.rpm
ruby-devel-1.8.1-18.el4.x86_64.rpm
ruby-docs-1.8.1-18.el4.x86_64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.x86_64.rpm
ruby-mode-1.8.1-18.el4.x86_64.rpm
ruby-tcltk-1.8.1-18.el4.x86_64.rpm

Red Hat Enterprise Linux WS version 4:

Source:
ftp://updates.redhat.com/enterprise/4WS/en/os/SRPMS/ruby-1.8.1-18.el4.src.rpm

i386:
irb-1.8.1-18.el4.i386.rpm
ruby-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-devel-1.8.1-18.el4.i386.rpm
ruby-docs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-mode-1.8.1-18.el4.i386.rpm
ruby-tcltk-1.8.1-18.el4.i386.rpm

ia64:
irb-1.8.1-18.el4.ia64.rpm
ruby-1.8.1-18.el4.ia64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.ia64.rpm
ruby-devel-1.8.1-18.el4.ia64.rpm
ruby-docs-1.8.1-18.el4.ia64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.ia64.rpm
ruby-mode-1.8.1-18.el4.ia64.rpm
ruby-tcltk-1.8.1-18.el4.ia64.rpm

x86_64:
irb-1.8.1-18.el4.x86_64.rpm
ruby-1.8.1-18.el4.x86_64.rpm
ruby-debuginfo-1.8.1-18.el4.i386.rpm
ruby-debuginfo-1.8.1-18.el4.x86_64.rpm
ruby-devel-1.8.1-18.el4.x86_64.rpm
ruby-docs-1.8.1-18.el4.x86_64.rpm
ruby-libs-1.8.1-18.el4.i386.rpm
ruby-libs-1.8.1-18.el4.x86_64.rpm
ruby-mode-1.8.1-18.el4.x86_64.rpm
ruby-tcltk-1.8.1-18.el4.x86_64.rpm

Red Hat Enterprise Linux Desktop (v. 5 client):

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/SRPMS/ruby-1.8.5-22.el5_7.1.src.rpm

i386:
ruby-1.8.5-22.el5_7.1.i386.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.i386.rpm
ruby-docs-1.8.5-22.el5_7.1.i386.rpm
ruby-irb-1.8.5-22.el5_7.1.i386.rpm
ruby-libs-1.8.5-22.el5_7.1.i386.rpm
ruby-rdoc-1.8.5-22.el5_7.1.i386.rpm
ruby-ri-1.8.5-22.el5_7.1.i386.rpm
ruby-tcltk-1.8.5-22.el5_7.1.i386.rpm

x86_64:
ruby-1.8.5-22.el5_7.1.x86_64.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.i386.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.x86_64.rpm
ruby-docs-1.8.5-22.el5_7.1.x86_64.rpm
ruby-irb-1.8.5-22.el5_7.1.x86_64.rpm
ruby-libs-1.8.5-22.el5_7.1.i386.rpm
ruby-libs-1.8.5-22.el5_7.1.x86_64.rpm
ruby-rdoc-1.8.5-22.el5_7.1.x86_64.rpm
ruby-ri-1.8.5-22.el5_7.1.x86_64.rpm
ruby-tcltk-1.8.5-22.el5_7.1.x86_64.rpm

RHEL Desktop Workstation (v. 5 client):

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/SRPMS/ruby-1.8.5-22.el5_7.1.src.rpm

i386:
ruby-debuginfo-1.8.5-22.el5_7.1.i386.rpm
ruby-devel-1.8.5-22.el5_7.1.i386.rpm
ruby-mode-1.8.5-22.el5_7.1.i386.rpm

x86_64:
ruby-debuginfo-1.8.5-22.el5_7.1.i386.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.x86_64.rpm
ruby-devel-1.8.5-22.el5_7.1.i386.rpm
ruby-devel-1.8.5-22.el5_7.1.x86_64.rpm
ruby-mode-1.8.5-22.el5_7.1.x86_64.rpm

Red Hat Enterprise Linux (v. 5 server):

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/ruby-1.8.5-22.el5_7.1.src.rpm

i386:
ruby-1.8.5-22.el5_7.1.i386.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.i386.rpm
ruby-devel-1.8.5-22.el5_7.1.i386.rpm
ruby-docs-1.8.5-22.el5_7.1.i386.rpm
ruby-irb-1.8.5-22.el5_7.1.i386.rpm
ruby-libs-1.8.5-22.el5_7.1.i386.rpm
ruby-mode-1.8.5-22.el5_7.1.i386.rpm
ruby-rdoc-1.8.5-22.el5_7.1.i386.rpm
ruby-ri-1.8.5-22.el5_7.1.i386.rpm
ruby-tcltk-1.8.5-22.el5_7.1.i386.rpm

ia64:
ruby-1.8.5-22.el5_7.1.ia64.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.ia64.rpm
ruby-devel-1.8.5-22.el5_7.1.ia64.rpm
ruby-docs-1.8.5-22.el5_7.1.ia64.rpm
ruby-irb-1.8.5-22.el5_7.1.ia64.rpm
ruby-libs-1.8.5-22.el5_7.1.ia64.rpm
ruby-mode-1.8.5-22.el5_7.1.ia64.rpm
ruby-rdoc-1.8.5-22.el5_7.1.ia64.rpm
ruby-ri-1.8.5-22.el5_7.1.ia64.rpm
ruby-tcltk-1.8.5-22.el5_7.1.ia64.rpm

ppc:
ruby-1.8.5-22.el5_7.1.ppc.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.ppc.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.ppc64.rpm
ruby-devel-1.8.5-22.el5_7.1.ppc.rpm
ruby-devel-1.8.5-22.el5_7.1.ppc64.rpm
ruby-docs-1.8.5-22.el5_7.1.ppc.rpm
ruby-irb-1.8.5-22.el5_7.1.ppc.rpm
ruby-libs-1.8.5-22.el5_7.1.ppc.rpm
ruby-libs-1.8.5-22.el5_7.1.ppc64.rpm
ruby-mode-1.8.5-22.el5_7.1.ppc.rpm
ruby-rdoc-1.8.5-22.el5_7.1.ppc.rpm
ruby-ri-1.8.5-22.el5_7.1.ppc.rpm
ruby-tcltk-1.8.5-22.el5_7.1.ppc.rpm

s390x:
ruby-1.8.5-22.el5_7.1.s390x.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.s390.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.s390x.rpm
ruby-devel-1.8.5-22.el5_7.1.s390.rpm
ruby-devel-1.8.5-22.el5_7.1.s390x.rpm
ruby-docs-1.8.5-22.el5_7.1.s390x.rpm
ruby-irb-1.8.5-22.el5_7.1.s390x.rpm
ruby-libs-1.8.5-22.el5_7.1.s390.rpm
ruby-libs-1.8.5-22.el5_7.1.s390x.rpm
ruby-mode-1.8.5-22.el5_7.1.s390x.rpm
ruby-rdoc-1.8.5-22.el5_7.1.s390x.rpm
ruby-ri-1.8.5-22.el5_7.1.s390x.rpm
ruby-tcltk-1.8.5-22.el5_7.1.s390x.rpm

x86_64:
ruby-1.8.5-22.el5_7.1.x86_64.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.i386.rpm
ruby-debuginfo-1.8.5-22.el5_7.1.x86_64.rpm
ruby-devel-1.8.5-22.el5_7.1.i386.rpm
ruby-devel-1.8.5-22.el5_7.1.x86_64.rpm
ruby-docs-1.8.5-22.el5_7.1.x86_64.rpm
ruby-irb-1.8.5-22.el5_7.1.x86_64.rpm
ruby-libs-1.8.5-22.el5_7.1.i386.rpm
ruby-libs-1.8.5-22.el5_7.1.x86_64.rpm
ruby-mode-1.8.5-22.el5_7.1.x86_64.rpm
ruby-rdoc-1.8.5-22.el5_7.1.x86_64.rpm
ruby-ri-1.8.5-22.el5_7.1.x86_64.rpm
ruby-tcltk-1.8.5-22.el5_7.1.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/#package

7. References:

https://www.redhat.com/security/data/cve/CVE-2011-3009.html
https://www.redhat.com/security/data/cve/CVE-2011-4815.html
https://access.redhat.com/security/updates/classification/#moderate
http://www.ocert.org/advisories/ocert-2011-003.html

8. Contact:

The Red Hat security contact is <secalert@redhat.com>.  More contact
details at https://access.redhat.com/security/team/contact/

Copyright 2012 Red Hat, Inc.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.4 (GNU/Linux)

iD8DBQFPJuO0XlSAg2UNWIIRAghXAKDDyW2+wAimegdVEVxClio75I8djACgrvHc
WYjnTYnTPhf71nt87CThpb0=
=s78C
-----END PGP SIGNATURE-----
Screenshot

Project Spotlight

Kigo Video Converter Ultimate for Mac

A tool for converting and editing videos.

Screenshot

Project Spotlight

Kid3

An efficient tagger for MP3, Ogg/Vorbis, and FLAC files.