First published: Tue Nov 27 2012(Updated: )
A denial of service flaw was found in the JRuby's Murmur hash function implementation. A specially-crafted set of keys could trigger Murmur hash function collisions, which degrade hash table items insert performance by changing hash table operations complexity from an expected/average O(n) to the worst case O(n^2). Reporters were able to find colliding strings efficiently using equivalent substrings. As various web application frameworks for Ruby automatically pre-fill certain arrays with data from the HTTP request (such as GET or POST parameters) for Ruby web applications, a remote attacker could use this flaw to make the Ruby interpreter use an excessive amount of CPU time by sending a POST request with a large number parameters which hash to the same value. A different vulnerability than <a href="https://access.redhat.com/security/cve/CVE-2011-4838">CVE-2011-4838</a>. References: [1] <a href="http://www.openwall.com/lists/oss-security/2012/11/23/4">http://www.openwall.com/lists/oss-security/2012/11/23/4</a> [2] <a href="http://www.ocert.org/advisories/ocert-2012-001.html">http://www.ocert.org/advisories/ocert-2012-001.html</a> [3] <a href="http://2012.appsec-forum.ch/conferences/#c17">http://2012.appsec-forum.ch/conferences/#c17</a> [4] <a href="https://www.131002.net/data/talks/appsec12_slides.pdf">https://www.131002.net/data/talks/appsec12_slides.pdf</a> [5] <a href="http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf">http://asfws12.files.wordpress.com/2012/11/asfws2012-jean_philippe_aumasson-martin_bosslet-hash_flooding_dos_reloaded.pdf</a>
Credit: cve@mitre.org
Affected Software | Affected Version | How to fix |
---|---|---|
maven/org.jruby:jruby-parent | <1.7.1 | 1.7.1 |
redhat/JRuby | <1.7.1 | 1.7.1 |
Rubygems |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2012-5370 is classified as a denial of service vulnerability.
To address CVE-2012-5370, upgrade your JRuby version to 1.7.1 or later.
CVE-2012-5370 can significantly degrade hash table performance due to increased collisions.
CVE-2012-5370 affects all versions of JRuby prior to 1.7.1.
CVE-2012-5370 affects the JRuby implementation across all operating systems that use vulnerable versions.