amphp/http-client Denial of Service via HTTP/2 CONTINUATION Frames
The advisory, in context
Early versions of amphp/http-client with HTTP/2 support (v4.0.0-rc10 to 4.0.0) will collect HTTP/2 CONTINUATION frames in an unbounded buffer and will not check the header size limit until it has received the END_HEADERS flag, resulting in an OOM crash. Later versions of amphp/http-client (v4.1.0-rc1 and up) depend on amphp/http for HTTP/2 processing and will therefore need an updated version of amphp/http, see GHSA-qjfw-cvjf-f4fm.
Acknowledgements
Thank you to Bartek Nowotarski for reporting the vulnerability.
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
From 4.0.0-rc10 before 4.1.0-rc1
Fixed in 4.1.0-rc1
3 explicitly affected versions
v4.0.0, v4.0.0-rc10, v4.0.0-rc11
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "4.0.0-rc10"
},
{
"fixed": "4.1.0-rc1"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"v4.0.0",
"v4.0.0-rc10",
"v4.0.0-rc11"
]
}