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.
{
"extracted_events": [
{
"cpe": "cpe:2.3:a:apache:tomcat:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "8.5.0"
},
{
"last_affected": "8.5.37"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.1"
},
{
"last_affected": "9.0.14"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone1:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone1"
},
{
"last_affected": "9.0.0-milestone1"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone10:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone10"
},
{
"last_affected": "9.0.0-milestone10"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone11:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone11"
},
{
"last_affected": "9.0.0-milestone11"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone12:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone12"
},
{
"last_affected": "9.0.0-milestone12"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone13:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone13"
},
{
"last_affected": "9.0.0-milestone13"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone14:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone14"
},
{
"last_affected": "9.0.0-milestone14"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone15:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone15"
},
{
"last_affected": "9.0.0-milestone15"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone16:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone16"
},
{
"last_affected": "9.0.0-milestone16"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone17:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone17"
},
{
"last_affected": "9.0.0-milestone17"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone18:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone18"
},
{
"last_affected": "9.0.0-milestone18"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone19:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone19"
},
{
"last_affected": "9.0.0-milestone19"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone2:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone2"
},
{
"last_affected": "9.0.0-milestone2"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone20:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone20"
},
{
"last_affected": "9.0.0-milestone20"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone21:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone21"
},
{
"last_affected": "9.0.0-milestone21"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone3:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone3"
},
{
"last_affected": "9.0.0-milestone3"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone4:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone4"
},
{
"last_affected": "9.0.0-milestone4"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone5:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone5"
},
{
"last_affected": "9.0.0-milestone5"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone6:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone6"
},
{
"last_affected": "9.0.0-milestone6"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone7:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone7"
},
{
"last_affected": "9.0.0-milestone7"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone8:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone8"
},
{
"last_affected": "9.0.0-milestone8"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:apache:tomcat:9.0.0:milestone9:*:*:*:*:*:*",
"range": [
{
"introduced": "9.0.0-milestone9"
},
{
"last_affected": "9.0.0-milestone9"
}
],
"source": "CPE_STRING"
}
]
}