CVE-2023-45288
"ApacheHTTP2 HPACK Header Data Overread Vulnerability"
Description
An attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames. Maintaining HPACK state requires parsing and processing all HEADERS and CONTINUATION frames on a connection. When a request's headers exceed MaxHeaderBytes, no memory is allocated to store the excess headers, but they are still parsed. This permits an attacker to cause an HTTP/2 endpoint to read arbitrary amounts of header data, all associated with a request which is going to be rejected. These headers can include Huffman-encoded data which is significantly more expensive for the receiver to decode than for an attacker to send. The fix sets a limit on the amount of excess header frames we will process before closing a connection.
INFO
Published Date :
April 4, 2024, 9:15 p.m.
Last Modified :
Nov. 21, 2024, 8:26 a.m.
Source :
[email protected]
Remotely Exploitable :
Yes !
Impact Score :
3.6
Exploitability Score :
3.9
Public PoC/Exploit Available at Github
CVE-2023-45288 has a 11 public PoC/Exploit
available at Github.
Go to the Public Exploits
tab to see the list.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2023-45288
.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
UNOFFICIAL Arch Linux LTS branch setup for a minimal GNOME 46 system
None
None
Dockerfile Go
A package manager for Go
cli command-line command-line-tool go golang golang-cli golang-tools ollama ollama-api openai openai-api package-management package-manager tools
Go
PoC for CVE-2023-45288, continuation flood vulnerability
Go
PoC to cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames
Python
PoC HTTP/2 Continuation Flood DOS Attack
Python
Proof of Concept: HTTP/2 CONTINUATION Flood
http2 poc proof-of-concept vulnerability http2-continuation-flood
Python Dockerfile Go
None
Rust
This repo showcases a proof of concept for HTTP/2 CONTINUATION Flood vulnerabilities, allowing testing and understanding of potential DoS attacks on servers due to protocol implementation flaws. Includes code, documentation, and CVE mapping.
Python
Fluent-bit output plugin to write to GCS buckets
Makefile Shell Go
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2023-45288
vulnerability anywhere in the article.
- tripwire.com
VERT Threat Alert: August 2024 Patch Tuesday Analysis
Today’s VERT Alert addresses Microsoft’s August 2024 Security Updates. VERT is actively working on coverage for these vulnerabilities and expects to ship ASPL-1119 as soon as coverage is completed.CVE ... Read more
The following table lists the changes that have been made to the
CVE-2023-45288
vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Modified by af854a3a-2127-422b-91ae-364da2661108
Nov. 21, 2024
Action Type Old Value New Value Added Reference http://www.openwall.com/lists/oss-security/2024/04/03/16 Added Reference http://www.openwall.com/lists/oss-security/2024/04/05/4 Added Reference https://go.dev/cl/576155 Added Reference https://go.dev/issue/65051 Added Reference https://groups.google.com/g/golang-announce/c/YgW0sx8mN3M Added Reference https://lists.fedoraproject.org/archives/list/[email protected]/message/QRYFHIQ6XRKRYBI2F5UESH67BJBQXUPT/ Added Reference https://pkg.go.dev/vuln/GO-2024-2687 Added Reference https://security.netapp.com/advisory/ntap-20240419-0009/ -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Aug. 26, 2024
Action Type Old Value New Value Added CVSS V3.1 CISA-ADP AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H -
CVE Modified by [email protected]
May. 14, 2024
Action Type Old Value New Value -
CVE Modified by [email protected]
May. 01, 2024
Action Type Old Value New Value Added Reference Go Project http://www.openwall.com/lists/oss-security/2024/04/03/16 [No types assigned] -
CVE Modified by [email protected]
May. 01, 2024
Action Type Old Value New Value Added Reference Go Project http://www.openwall.com/lists/oss-security/2024/04/05/4 [No types assigned] -
CVE Modified by [email protected]
Apr. 25, 2024
Action Type Old Value New Value Added Reference Go Project https://lists.fedoraproject.org/archives/list/[email protected]/message/QRYFHIQ6XRKRYBI2F5UESH67BJBQXUPT/ [No types assigned] -
CVE Modified by [email protected]
Apr. 19, 2024
Action Type Old Value New Value Added Reference Go Project https://security.netapp.com/advisory/ntap-20240419-0009/ [No types assigned] -
CVE Received by [email protected]
Apr. 04, 2024
Action Type Old Value New Value Added Description An attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames. Maintaining HPACK state requires parsing and processing all HEADERS and CONTINUATION frames on a connection. When a request's headers exceed MaxHeaderBytes, no memory is allocated to store the excess headers, but they are still parsed. This permits an attacker to cause an HTTP/2 endpoint to read arbitrary amounts of header data, all associated with a request which is going to be rejected. These headers can include Huffman-encoded data which is significantly more expensive for the receiver to decode than for an attacker to send. The fix sets a limit on the amount of excess header frames we will process before closing a connection. Added Reference Go Project https://go.dev/issue/65051 [No types assigned] Added Reference Go Project https://go.dev/cl/576155 [No types assigned] Added Reference Go Project https://groups.google.com/g/golang-announce/c/YgW0sx8mN3M [No types assigned] Added Reference Go Project https://pkg.go.dev/vuln/GO-2024-2687 [No types assigned]
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2023-45288
is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2023-45288
weaknesses.