The HTTP/2 implementation in Apache Tomcat 9.0.0.M1 to 9.0.14 and 8.5.0 to 8.5.37 accepted streams with excessive…
The HTTP/2 implementation in Apache Tomcat 9.0.0.M1 through 9.0.14 and 8.5.0 through 8.5.37 accepts streams carrying excessive numbers of SETTINGS frames and lets clients hold streams open without reading or writing request or response data. A remote client that keeps such streams open for requests using the Servlet API's blocking I/O can cause server threads to block until they are exhausted, producing a denial of service.
The HTTP/2 implementation in Apache Tomcat 9.0.0.M1 to 9.0.14 and 8.5.0 to 8.5.37 accepted streams with excessive numbers of SETTINGS frames and also permitted clients to keep streams open without reading/writing request/response data. By keeping streams open for requests that utilised the Servlet API's blocking I/O, clients were able to cause server-side threads to block eventually leading to thread exhaustion and a DoS.
- Exploited
- Not confirmed
- Reports
- 0
- Tactics
- 0/15
Exploitation timelineDated milestones for a CVE: when it was disclosed, when exploit code became public, when exploitation was confirmed, and when threat reports named it.
Disclosed on 10 Apr 2019. No public exploit code or confirmed exploitation is recorded.
Patch historyEarlier and later CVEs in the same code, in date order. It shows when a fix was bypassed or incomplete and which version finally fixed it.
See the family treeA fix was bypassed or incomplete once over 2 years. The latest fix listed for tomcat-coyote is 10.0.0-M6.
Same bug familyLinked by evidence that a fix failed or the same code was patched again. Oldest first.
- same familyThis CVECVE-2019-0199The HTTP/2 implementation in Apache Tomcat 9.0.0.M1 to 9.0.14…10 Apr 2019
incomplete fixHigh
Why these are linked: Link confidenceHow strong the evidence is that two CVEs are related. High: stated in the CVE text or linked in an advisory, or the same code was patched one release apart. Medium: the same code, or a version step plus a similar description. Low: similar description only.
- Stated in the CVE text
The fix for CVE-2019-0199 was incomplete and did not address HTTP/2 connection window exhaustion on write in Apache Tomcat versions 9.0.0.M1 to 9.0.19 and 8.5.0 to 8.5.40 .
- Stated in the CVE text
Fixes in tomcat-coyoteMaven package, by fixed version. Earlier and later fixes in the same package, not necessarily the same bug.
- 8.5.89CVE-2023-3498121 Jun 2023
- 9.0.0.M12CVE-2016-681620 Mar 2017
- 9.0.0.M19CVE-2017-565117 Apr 2017
- 9.0.16CVE-2019-019910 Apr 2019
- 9.0.44CVE-2024-2173319 Jan 2024
- 9.0.81CVE-2023-4279410 Oct 2023
- 9.0.107CVE-2025-5243410 Jul 2025
- 10.0.0-M6CVE-2020-1393414 Jul 2020Latest listed
MITRE ATT&CKA public catalogue of the techniques attackers use, maintained by MITRE. Patchfirst uses it to describe what attackers do with a vulnerability. techniques
No techniques linkedNo ATT&CK techniques are linked to this CVE yet. MITRE CTID has not mapped it, and no report passage in the corpus ties it to a technique.
Am I affected? What do I upgrade to?
From GitHub Security Advisories and OSV2 packages in 1 ecosystem. No single main package: each of these ships the affected code.
- Mavenorg.apache.tomcat.embed:tomcat-embed-coreAffected: 9.0.0 up to 9.0.16; 8.0.0 up to 8.5.38Upgrade to 9.0.109 or later (older lines: 8.5.94)
- Mavenorg.apache.tomcat:tomcat-coyoteAffected: 9.0.0 up to 9.0.16; 8.0.0 up to 8.5.38Upgrade to 9.0.104 or later (older lines: 8.5.94)