A HTTP/2 implementation built using any version of the Python HPACK library between v1.0.0 and v2.2.0 could be targeted for a denial of service attack, specifically a so-called "HPACK Bomb" attack. This attack occurs when an attacker inserts a header field that is exactly the size of the HPACK dynamic header table into the dynamic header table. The attacker can then send a header block that is simply repeated requests to expand that field in the dynamic table. This can lead to a gigantic compression ratio of 4,096 or better, meaning that 16kB of data can decompress to 64MB of data on the target machine.
{
"unresolved_ranges": [
{
"source": "CPE_STRING",
"cpes": [
"cpe:2.3:a:python:hyper:0.4:*:*:*:*:*:*:*",
"cpe:2.3:a:python:hyper:0.6:*:*:*:*:*:*:*"
],
"vendor_product": "python:hyper",
"extracted_events": [
{
"introduced": "0.4"
},
{
"last_affected": "0.4"
},
{
"introduced": "0.6"
},
{
"last_affected": "0.6"
}
]
}
]
}{
"cpe": [
"cpe:2.3:a:python:hpack:1.0:*:*:*:*:*:*:*",
"cpe:2.3:a:python:hpack:2.0:*:*:*:*:*:*:*",
"cpe:2.3:a:python:hpack:2.0.1:*:*:*:*:*:*:*",
"cpe:2.3:a:python:hpack:2.1.1:*:*:*:*:*:*:*",
"cpe:2.3:a:python:hpack:2.2:*:*:*:*:*:*:*"
],
"source": "CPE_STRING",
"extracted_events": [
{
"introduced": "1.0"
},
{
"last_affected": "1.0"
},
{
"introduced": "2.0"
},
{
"last_affected": "2.0"
},
{
"introduced": "2.0.1"
},
{
"last_affected": "2.0.1"
},
{
"introduced": "2.1.1"
},
{
"last_affected": "2.1.1"
},
{
"introduced": "2.2"
},
{
"last_affected": "2.2"
}
]
}