CVE-2011-5034

Source: cve@mitre.org

HIGH
7.8
Published: December 30, 2011 at 01:55 AM
Modified: April 11, 2025 at 12:51 AM

Vulnerability Description

Apache Geronimo 2.2.1 and earlier 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. NOTE: this might overlap CVE-2011-4461.

CVSS Metrics

Base Score
7.8
Severity
HIGH
Vector String
AV:N/AC:L/Au:N/C:N/I:N/A:C

Weaknesses (CWE)

Source: nvd@nist.gov

AI Security Analysis

01 // Technical Summary

Apache Geronimo 2.2.1 and earlier are vulnerable to a denial-of-service (DoS) attack. Attackers can exploit a flaw in how the server handles form parameters, causing excessive CPU consumption by triggering hash collisions. This vulnerability allows attackers to render the server unresponsive, disrupting critical services.

02 // Vulnerability Mechanism

Step 1: Target Identification: The attacker identifies a vulnerable Apache Geronimo server, specifically versions 2.2.1 and earlier.

Step 2: Payload Generation: The attacker crafts a malicious HTTP POST request. This request includes a large number of form parameters.

Step 3: Collision Crafting: The attacker carefully constructs the parameter values to cause hash collisions within the server's internal hash table. This involves understanding the hash function used and creating parameters that map to the same hash bucket.

Step 4: Request Submission: The attacker sends the crafted HTTP POST request to the vulnerable server.

Step 5: Server Exhaustion: The server receives the request and begins processing the parameters. Due to the hash collisions, the server spends an excessive amount of time resolving these collisions, leading to high CPU usage.

Step 6: Denial of Service: The server's CPU becomes saturated, and it becomes unresponsive to legitimate requests, resulting in a denial-of-service condition.

03 // Deep Technical Analysis

The vulnerability lies in the use of a weak hash function (likely a default or poorly implemented one) for processing form parameters. The server computes hash values for these parameters without proper collision resistance. Attackers can craft a large number of parameters with specific values designed to collide within the hash table. This leads to a significant performance degradation as the server spends an excessive amount of time resolving these collisions, ultimately consuming all available CPU resources. The root cause is the lack of a robust hash function and the absence of mechanisms to mitigate hash collision attacks, such as using a cryptographically secure hash function or employing techniques like chaining or probing to handle collisions efficiently.

04 // Exploitation Status

Public PoC. While the vulnerability is old, the underlying principle of hash collision DoS remains relevant and can be adapted to other vulnerable systems. Exploits are likely readily available or easily created.

05 // Threat Intelligence

While no specific APTs are directly linked to this CVE, the technique of hash collision attacks is widely known and can be employed by various threat actors. This type of attack is often used as a precursor to other attacks or as a means to disrupt operations. This CVE is not listed on the CISA KEV.

06 // Detection & Hunting

  • High CPU utilization on the server, especially when processing HTTP POST requests.

  • Unusually slow response times from the server.

  • Network traffic analysis revealing a large number of form parameters in POST requests.

  • Server logs showing excessive processing time or errors related to parameter handling.

  • Monitoring for HTTP POST requests with a large number of parameters.

07 // Remediation & Hardening

  • Upgrade to a patched version of Apache Geronimo (2.2.2 or later).

  • Implement a web application firewall (WAF) to filter malicious requests, including those with a large number of parameters.

  • Limit the number of parameters accepted by the server.

  • Implement rate limiting to restrict the number of requests from a single source.

  • Review and harden the server configuration to prevent resource exhaustion.

  • Consider using a more robust hash function or a hash table implementation that handles collisions more efficiently (e.g., using a cryptographically secure hash function).

08 // Affected Products

Apache Geronimo 2.2.1 and earlier

09 // Discovered Proof of Concept Links

Advertisement

References & Intelligence

http://archives.neohapsis.com/archives/bugtraq/2011-12/0181.html
Source: cve@mitre.org
http://secunia.com/advisories/47412
Source: cve@mitre.org
http://www.kb.cert.org/vuls/id/903934
Source: cve@mitre.org
US Government Resource
http://www.nruns.com/_downloads/advisory28122011.pdf
Source: cve@mitre.org
http://www.ocert.org/advisories/ocert-2011-003.html
Source: cve@mitre.org
https://github.com/FireFart/HashCollision-DOS-POC/blob/master/HashtablePOC.py
Source: cve@mitre.org
https://lists.apache.org/thread.html/r20957aa5962a48328f199e2373f408aeeae601a45dd5275a195e2b6e%40%3Cjava-dev.axis.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/r360b70489bad65286b49ceb5303a849d2a7ec7d1292774a7259579e1%40%3Cissues.karaf.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/r3c541f019b74902e8e61d73e40ecc2837dfce1b744ad5546919b993c%40%3Cissues.karaf.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/r4fe6b5ff1d48e23337304fd5ac983d89328aecbd1fa198cfc966fbd7%40%3Cdev.geronimo.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/r653f633aa7b6ccbb8c338dbfcea7a00e4ae9d6f3e064a03cab8dc20d%40%3Cjava-dev.axis.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/r67747af92035942c9c413bd8394acbb8a1ace5833c0177014c825bc2%40%3Cissues.karaf.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/r8dc1a0ae0e0cf9d2494b8cbd66562f99331c4cf635e7781850a9b9ba%40%3Cjava-dev.axis.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/ra10015f6f3c3c88b7d813383554e87c06347fe163487148669189b8e%40%3Cdev.geronimo.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/ra1fe29f6399b68980f914d8613dee7f67d62a1a97722fe9cd56f4f5f%40%3Cdev.geronimo.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/rb0e85243d7268f1d7a1edb5e6c7df885dbd300acabaaf4cb0e880518%40%3Cissues.karaf.apache.org%3E
Source: cve@mitre.org
https://lists.apache.org/thread.html/rdd67ea3e489134f653349fc2cb09828ac8462aa61dd776b505a3297a%40%3Cissues.karaf.apache.org%3E
Source: cve@mitre.org
http://archives.neohapsis.com/archives/bugtraq/2011-12/0181.html
Source: af854a3a-2127-422b-91ae-364da2661108
http://secunia.com/advisories/47412
Source: af854a3a-2127-422b-91ae-364da2661108
http://www.kb.cert.org/vuls/id/903934
Source: af854a3a-2127-422b-91ae-364da2661108
US Government Resource
http://www.nruns.com/_downloads/advisory28122011.pdf
Source: af854a3a-2127-422b-91ae-364da2661108
http://www.ocert.org/advisories/ocert-2011-003.html
Source: af854a3a-2127-422b-91ae-364da2661108
https://github.com/FireFart/HashCollision-DOS-POC/blob/master/HashtablePOC.py
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r20957aa5962a48328f199e2373f408aeeae601a45dd5275a195e2b6e%40%3Cjava-dev.axis.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r360b70489bad65286b49ceb5303a849d2a7ec7d1292774a7259579e1%40%3Cissues.karaf.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r3c541f019b74902e8e61d73e40ecc2837dfce1b744ad5546919b993c%40%3Cissues.karaf.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r4fe6b5ff1d48e23337304fd5ac983d89328aecbd1fa198cfc966fbd7%40%3Cdev.geronimo.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r653f633aa7b6ccbb8c338dbfcea7a00e4ae9d6f3e064a03cab8dc20d%40%3Cjava-dev.axis.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r67747af92035942c9c413bd8394acbb8a1ace5833c0177014c825bc2%40%3Cissues.karaf.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/r8dc1a0ae0e0cf9d2494b8cbd66562f99331c4cf635e7781850a9b9ba%40%3Cjava-dev.axis.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/ra10015f6f3c3c88b7d813383554e87c06347fe163487148669189b8e%40%3Cdev.geronimo.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/ra1fe29f6399b68980f914d8613dee7f67d62a1a97722fe9cd56f4f5f%40%3Cdev.geronimo.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/rb0e85243d7268f1d7a1edb5e6c7df885dbd300acabaaf4cb0e880518%40%3Cissues.karaf.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.apache.org/thread.html/rdd67ea3e489134f653349fc2cb09828ac8462aa61dd776b505a3297a%40%3Cissues.karaf.apache.org%3E
Source: af854a3a-2127-422b-91ae-364da2661108