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.
{ "binaries": [ { "binary_name": "libtomcat8-embed-java", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "libtomcat8-java", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "tomcat8", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "tomcat8-admin", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "tomcat8-common", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "tomcat8-docs", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "tomcat8-examples", "binary_version": "8.5.39-1ubuntu1~18.04.1" }, { "binary_name": "tomcat8-user", "binary_version": "8.5.39-1ubuntu1~18.04.1" } ], "availability": "No subscription required" }