{"id":"CVE-2016-6581","aliases":["DEBIAN-CVE-2016-6581","EUVD-2017-0059","GHSA-ffq8-576r-v26g","PYSEC-2017-87","UBUNTU-CVE-2016-6581","openSUSE-SU-2024:11230-1","openSUSE-SU-2024:14140-1","openSUSE-SU-2026:11556-1"],"status":"published","title":"HPACK Denial of Service vulnerability (HPACK Bomb)","description":"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.","severity":{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.01877,"percentile":0.79563,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-399"],"published":"2017-01-10T15:00:00Z","modified":"2026-10-24T10:30:58Z","fixes":[{"ecosystem":"PyPI","package":"hpack","fixed_in":["2.3.0"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"python-hpack","fixed_in":["2.3.0-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"python-hpack","fixed_in":["2.3.0-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"python-hpack","fixed_in":["2.3.0-1"],"sources":["osv"]},{"ecosystem":"openSUSE:Tumbleweed","package":"python-hpack","fixed_in":["4.0.0-2.7"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.0.0"},{"fixed":"2.3.0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"python-hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"python-hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"python-hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0-1"}]}]},{"source":"osv","ecosystem":"PyPI","package":"hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.0.0"},{"fixed":"2.3.0"}]}],"versions":["1.0.0","1.0.1","1.1.0","2.0.0","2.0.1","2.1.0","2.1.1","2.2.0"]},{"source":"osv","ecosystem":"PyPI","package":"hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0"}]}],"versions":["1.0.0","1.0.1","1.1.0","2.0.0","2.0.1","2.1.0","2.1.1","2.2.0"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"python-hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0-1","2.0.1-1","2.1.0-1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python-hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.0.0-2.7"}]}]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python-hpack","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.2.0-1.1"}]}],"bundled":2}],"products":[{"vendor":"python","product":"hpack"},{"vendor":"python","product":"hyper"}],"references":[{"url":"http://www.securityfocus.com/bid/92315","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory","web"]},{"url":"https://python-hyper.org/hpack/en/latest/security/CVE-2016-6581.html","tags":["x_refsource_CONFIRM","x_transferred","Mitigation","Vendor Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2016-6581","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-ffq8-576r-v26g","tags":["advisory"]},{"url":"http://python-hyper.org/projects/hpack/en/stable/security/CVE-2016-6581.html","tags":["web"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/hpack/PYSEC-2017-87.yaml","tags":["web"]},{"url":"https://web.archive.org/web/20200227233559/http://www.securityfocus.com/bid/92315","tags":["web"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2016-6581","tags":["advisory"]},{"url":"https://github.com/python-hyper/hpack","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2016-6581","tags":["report"]},{"url":"https://github.com/python-hyper/hpack/pull/56","tags":["report"]},{"url":"http://www.openwall.com/lists/oss-security/2016/08/04/3","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-6581","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2016-6581","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2026-59980","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2016-6581","description":"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.","status":"published","published":"2017-01-10T15:00:00Z","modified":"2024-08-06T01:36:28.459Z","updated_at":"2026-11-02T14:33:34.443637Z"}],"euvd":[{"id":"EUVD-2017-0059","description":"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.","status":"published","published":"2017-01-10T15:00:00Z","modified":"2024-08-06T01:36:28Z","updated_at":"2026-11-03T02:22:35.936009Z"}],"ghsa":[{"id":"GHSA-ffq8-576r-v26g","title":"HPACK Denial of Service vulnerability (HPACK Bomb)","description":"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.","status":"published","published":"2019-07-05T21:11:05Z","modified":"2024-09-20T21:39:26Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T14:38:05.526697Z"}],"nvd":[{"id":"CVE-2016-6581","description":"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.","status":"published","published":"2017-01-10T15:59:00.423Z","modified":"2026-06-17T00:51:24.253Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":7.8,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:C","level":"high","assessor":"primary"}],"cwes":["CWE-399"],"updated_at":"2026-11-02T14:03:33.686843Z"}],"osv":[{"id":"CVE-2016-6581","description":"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.","status":"published","published":"2017-01-10T15:59:00.423Z","modified":"2026-10-24T10:30:58.406113051Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:02.776224Z"},{"id":"DEBIAN-CVE-2016-6581","description":"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.","status":"published","published":"2017-01-10T15:59:00.423Z","modified":"2026-09-22T07:00:28.069358112Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:27.910042Z"},{"id":"GHSA-ffq8-576r-v26g","title":"HPACK Denial of Service vulnerability (HPACK Bomb)","description":"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.","status":"published","published":"2019-07-05T21:11:05Z","modified":"2024-11-30T05:39:01.605415Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"},{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","level":"high"}],"updated_at":"2026-11-02T15:46:46.39441Z"},{"id":"UBUNTU-CVE-2016-6581","description":"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.","status":"published","published":"2017-01-10T15:59:00Z","modified":"2025-10-24T04:45:51Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:12.642042Z"},{"id":"openSUSE-SU-2024:11230-1","title":"python36-hpack-4.0.0-1.6 on GA media","description":"These are all security issues fixed in the python36-hpack-4.0.0-1.6 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T04:06:25.992159Z","updated_at":"2026-11-02T16:58:34.894275Z"},{"id":"openSUSE-SU-2024:14140-1","title":"python310-hpack-4.0.0-2.7 on GA media","description":"These are all security issues fixed in the python310-hpack-4.0.0-2.7 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-07-12T00:00:00Z","modified":"2026-02-04T02:50:56.405657Z","updated_at":"2026-11-02T16:58:36.662953Z"},{"id":"openSUSE-SU-2026:11556-1","title":"python313-hpack-4.2.0-1.1 on GA media","description":"These are all security issues fixed in the python313-hpack-4.2.0-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-08-19T00:00:00Z","modified":"2026-08-21T09:15:07.689992841Z","updated_at":"2026-11-02T16:58:39.516824Z"},{"id":"PYSEC-2017-87","description":"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.","status":"published","published":"2017-01-10T15:59:00Z","modified":"2023-11-08T03:58:32.800713Z","updated_at":"2026-11-02T15:52:51.645172Z"}]}}
