Bug 875236 (CVE-2012-5371)

Summary: CVE-2012-5371 ruby: Murmur hash-flooding DoS flaw in ruby 1.9 (oCERT-2012-001)
Product: [Other] Security Response Reporter: Vincent Danen <vdanen>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: bkabrda, jeremy, jlieskov, mmorsi, mtasaka, rmillner, tagoh, tkramer, vanmeeuwen+fedora, vondruch
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: impact=moderate,public=20121109,reported=20121109,source=internet,cvss2=5.0/AV:N/AC:L/Au:N/C:N/I:N/A:P,fedora-17/ruby=affected,fedora-18/ruby=affected,openshift-1/ruby193=affected,openshift-enterprise-1/ruby193=affected
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-06 15:29:17 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On: 875267, 875268, 904023    
Bug Blocks: 875237    

Description Vincent Danen 2012-11-09 17:08:09 EST
Ruby 1.9.3-p327 was released to correct a hash-flooding DoS vulnerability that only affects 1.9.x and the 2.0.0 preview [1].

As noted in the upstream report:

Carefully crafted sequence of strings can cause a denial of service attack on the service that parses the sequence to create a Hash object by using the strings as keys. For instance, this vulnerability affects web application that parses the JSON data sent from untrusted entity.

This vulnerability is similar to CVS-2011-4815 for ruby 1.8.7. ruby 1.9 versions were using modified MurmurHash function but it's reported that there is a way to create sequence of strings that collide their hash values each other. This fix changes the Hash function of String object from the MurmurHash to SipHash 2-4.

Ruby 1.8.x is not noted as being affected by this flaw.

[1] http://www.ruby-lang.org/en/news/2012/11/09/ruby19-hashdos-cve-2012-5371/
Comment 1 Vincent Danen 2012-11-09 17:11:40 EST
The upstream commit is here:

Comment 3 Vincent Danen 2012-11-09 20:13:40 EST
Upstream has confirmed that 1.8.x is not affected by this flaw.


Not vulnerable. This issue did not affect the versions of ruby as shipped with Red Hat Enterprise Linux 5 and 6.
Comment 4 Vincent Danen 2012-11-09 20:14:39 EST
Created ruby tracking bugs for this issue

Affects: fedora-17 [bug 875267]
Affects: fedora-18 [bug 875268]
Comment 7 Vincent Danen 2012-11-28 12:56:17 EST
Fixed in Fedora 17 and 18 via:

Comment 9 errata-xmlrpc 2013-02-28 14:08:29 EST
This issue has been addressed in following products:

  RHEL 6 Version of OpenShift Enterprise

Via RHSA-2013:0582 https://rhn.redhat.com/errata/RHSA-2013-0582.html