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.
{
"nvd_published_at": "2019-04-10T15:29:00Z",
"cwe_ids": [
"CWE-400"
],
"severity": "HIGH",
"github_reviewed_at": "2020-06-15T16:43:54Z",
"github_reviewed": true
}