HexBrain

Internet Bug Bounty · Report #2586226

CVE-2024-34750 Apache Tomcat DoS vulnerability in HTTP/2 connector

Validstatus
highseverity
$4,920bounty
60upvotes
5 Jul 2024disclosed

Summary

CVE-2024-34750 Apache Tomcat - Denial of Service

Severity: Important

Vendor: The Apache Software Foundation

Versions Affected: Apache Tomcat 11.0.0-M1 to 11.0.0-M20 Apache Tomcat 10.1.0-M1 to 10.1.24 Apache Tomcat 9.0.0-M1 to 9.0.89

Description: When processing an HTTP/2 stream, Tomcat did not handle some cases of excessive HTTP headers correctly. This led to a miscounting of active HTTP/2 streams which in turn led to the use of an incorrect infinite timeout which allowed connections to remain open which should have been closed.

Mitigation: Users of the affected versions should apply one of the following mitigations:

  • Upgrade to Apache Tomcat 11.0.0-M21 or later
  • Upgrade to Apache Tomcat 10.1.25 or later
  • Upgrade to Apache Tomcat 9.0.90 or later

Credit: This vulnerability was reported responsibly to the Tomcat security team by devme4f from VNPT-VCI.

How it was found

Hello IBB team, i would like to submit a report about Apache Tomcat DoS vulnerability that i have reported to the Tomcat team, which was assigned to CVE-2024-34750 and disclosed yesterday.

Details: When processing an HTTP/2 stream, Tomcat did not handle some cases of excessive HTTP headers correctly. This led to a miscounting of active HTTP/2 streams which in turn led to the use of an incorrect infinite timeout which allowed connections to remain open which should have been closed.

Here is the email thread that i contacted the security team: ██████████

Impact

Since HTTP/2 connections are left open indefinitely, depending on configuration the DoS is caused either by the server running out of memory or by the open connections reaching maxConnections.

This report was disclosed publicly on HackerOne and belongs to its author and the program. See the original