CVE-2011-5036 Rack Gem Subject to Denial of Service via Hash Collisions

Medium 5.0 Published Updated

Remote attackers can cause denial of service via CPU exhaustion by sending crafted form parameters that trigger hash collisions in the Rack library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2011-5036?

CVE-2011-5036 is a medium-severity denial of service vulnerability in n/a, published on 30 Dec 2011. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Rack before 1.1.3, 1.2.x before 1.2.5, and 1.3.x before 1.3.6 computes hash values for form parameters without restricting the ability to trigger hash collisions predictably, which allows remote attackers to cause a denial of service (CPU consumption) by sending many crafted parameters.

Weakness: CWE-310

Which versions are affected by CVE-2011-5036?

8 open source packages ship an affected version, including rack and org.jruby:jruby-parent. It affects 1 product.

PackageAffectedFixed in
rack RubyGemsAll versions1.1.3
rack RubyGemsAll versions1.1.3
rack RubyGemsFrom 1.2.01.2.5
rack RubyGemsFrom 1.2.01.2.5
rack RubyGemsFrom 1.3.01.3.6
rack RubyGemsFrom 1.3.01.3.6
2 more packages
org.jruby:jruby-parent MavenAll versions1.6.5.1
org.jruby:jruby-parent MavenAll versions1.6.5.1

Products include Rack Project Rack.

How do I fix CVE-2011-5036?

Upgrade rack to a fixed version for your release line: 1.1.3, 1.2.5 or 1.3.6.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2011-5036 being exploited?

There is no known exploitation of CVE-2011-5036 in the wild and no public exploit code.

Sources

Also known as DEBIAN-CVE-2011-5036, GHSA-v6j3-7jrw-hq2p.

Is CVE-2011-5036 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free