Quicly
CVE-2026-44433
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconConnect to QUIC UDP port
-
DeliveryOpen maximum concurrent STREAM frames
-
ExploitSend 1-byte payload at maximum flow control offset
-
InstallForce per-stream receive buffer allocation
-
C2Repeat across connections
-
ExecuteExhaust server memory
-
ImpactDenial of service
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attack requires network access to the server's QUIC UDP port and that the Quicly-based application (specifically H2O) be configured to support QUIC/HTTP-3. Exploitation severity scales with two configuration factors: first, the application's receive buffer allocation strategy - the vulnerability is most severe when a contiguous buffer is allocated from offset 0 to the largest received offset to accommodate out-of-order data; second, the stream concurrency limit - under H2O's default settings, enough concurrent streams are permitted to amplify memory consumption approximately 4x per connection. Applications that pre-allocate only sparse or bounded buffers for out-of-order data would see reduced impact. No authentication, user interaction, or special session state is required. Exploitation is limited to environments actually running H2O with QUIC enabled; plain HTTP/1.1 or HTTP/2 deployments are unaffected. |
| Impact | The CVSS base score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) accurately reflects a remotely exploitable, unauthenticated network attack requiring no user interaction, with high availability impact. However, real-world risk is substantially lower than the raw score implies. EPSS of 0.25% (16th percentile) is very low, indicating minimal observed exploitation interest from the broader threat landscape. SSVC classifies exploitation as 'none' and technical impact as 'partial', consistent with a targeted DoS rather than mass exploitation. The attack is SSVC-automatable (yes), meaning it could be scripted and repeated, but H2O is a niche HTTP server with limited deployment compared to nginx or Apache, which bounds the actual attack surface. The vulnerability requires that the application use a contiguous receive buffer strategy and that stream concurrency be non-trivially high - under H2O defaults the 4x amplification is confirmed, but tighter stream concurrency limits would reduce severity. KEV status is absent, and no POC has been identified. Overall, this is a legitimate DoS concern for H2O operators but not a priority for environments not running H2O or Quicly. |
| Exploit ScenarioDerived | An attacker with network access to an H2O server's QUIC UDP port opens a connection and sends a small number of STREAM frames, each carrying a single byte positioned at the maximum flow-control-permitted stream offset. The server's receive buffer manager allocates memory up to the advertised offset for each stream to handle anticipated out-of-order segments, consuming memory vastly disproportionate to the bytes actually transferred. By opening multiple concurrent streams (permissible under H2O's default configuration) and repeating this pattern across connections, the attacker exhausts available memory and crashes or degrades the server. No public POC has been identified. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Aug 06, 2026
Memory exhaustion in Quicly's QUIC flow control handling allows an unauthenticated remote peer to force disproportionate receive buffer allocation in the H2O HTTP server by sending STREAM frames containing a single byte placed at the maximum permitted stream offset. The library pre-allocates buffers up to the largest received offset to accommodate out-of-order delivery, so a handful of crafted packets can cause the server to allocate memory far exceeding what the transferred data warrants. Under H2O's default stream concurrency settings, this attack multiplies per-connection memory usage by roughly 4x, making memory exhaustion achievable at low bandwidth cost. No public exploit identified at time of analysis; EPSS is 0.25% (16th percentile) and CISA SSVC lists exploitation as 'none', suggesting no observed real-world abuse.
Earlier versions of this analysis (1)
Memory exhaustion via crafted QUIC STREAM frames in Quicly (all versions prior to commit 8b178e6) allows an unauthenticated remote peer to cause disproportionate server memory allocation using only a handful of packets. By sending a single-byte STREAM frame positioned at the maximum permitted flow control offset, an adversary tricks the library into granting undeserved additional flow control credit, causing the receiver to pre-allocate a receive buffer spanning the full permitted offset range. Under H2O's default stream concurrency settings, this amplifies maximum per-connection memory consumption by approximately 4x, enabling a low-bandwidth denial-of-service condition. No public exploit code has been identified at time of analysis, and this CVE is not listed in CISA KEV.
RemediationAI
The upstream fix is available at commit 8b178e692c51a3b1031612ef89f03a53aac63c15 in the h2o/quicly repository (https://github.com/h2o/quicly/commit/8b178e692c51a3b1031612ef89f03a53aac63c15). Operators should update Quicly to a build incorporating this commit or any subsequent tagged release that includes it. Because Quicly is typically embedded within H2O rather than distributed as a standalone package, operators should rebuild H2O from source against the patched Quicly tree or await an H2O distribution update. As a compensating control pending patching, reducing the maximum number of concurrent QUIC streams per connection (via H2O's stream concurrency configuration) will limit the per-connection memory amplification, trading some HTTP-3 throughput for reduced DoS exposure. Disabling HTTP-3/QUIC entirely and falling back to HTTP-2 over TLS eliminates the attack surface entirely but removes QUIC performance benefits. No vendor-released tagged version boundary has been confirmed, so pinning to a specific release number from public package repositories may not be sufficient - verify the embedded Quicly commit hash.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Quicly (CPE: cpe:2.3:a:h2o:quicly:*:*:*:*:*:*:*:*) is an IETF QUIC protocol library written in C, designed primarily for use within the H2O HTTP server. QUIC flow control permits each endpoint to signal how much data it is willing to receive; an attacker exploits this by placing exactly one byte of data at the maximum allowed stream offset, causing the receiver to interpret the full offset range as potentially in-flight out-of-order data. If the application allocates a contiguous receive buffer spanning from byte 0 to the largest received offset - to store reordered segments - this single byte triggers an outsized allocation. CWE-770 (Allocation of Resources Without Limits or Throttling) identifies the root cause: no per-connection ceiling on the aggregate memory committed for receive buffers. Stream concurrency further amplifies impact because each concurrent stream independently triggers the same oversized allocation. Notably, the fix commit (8b178e692c51a3b1031612ef89f03a53aac63c15) as visible in the diff primarily adds Connection ID (CID) length validation - rejecting packets whose destination or source CID exceeds QUICLY_MAX_CID_LEN_V1 - and a corresponding test for 255-byte SCID payloads; this may indicate the commit addresses multiple DoS vectors, with the STREAM-frame flow control issue described in the advisory and the CID length overflow fixed together.
Know when Quicly gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Unauthenticated peer over network with no complexity; no confidentiality or integrity impact, only availability exhaustion.
Primary rating from Vendor (GitHub_M).
CVSS VectorNVD
Lifecycle Timeline
3DescriptionNVD
Quicly is an IETF QUIC protocol implementation intended primarily for use within the H2O HTTP server. Prior to commit 8b178e6, an adversarial peer could send a STREAM frame carrying just one byte at the largest offset being permitted to obtain additional flow control credit, which under certain circumstances could lead to a Denial of Service. Assuming the application prepares a receive buffer for storing all data that arrive out-of-order, up to the largest offset being received, this behavior could lead to the application allocating large amount of memory with the peer sending only a handful of packets, resulting in memory exhaustion. In addition to the receive buffer allocation strategy, the severity of this vulnerability depends on how the application controls the stream concurrency. In case of the H2O HTTP server, under its default setting, this bug increases the maximum amount of memory allocated per connection by about 4 times. This issue has been fixed by commit 8b178e6.
Executive ViewAI
A memory exhaustion vulnerability in Quicly's QUIC implementation affects H2O HTTP servers, allowing unauthenticated attackers to trigger disproportionate memory allocation through low-bandwidth attacks using crafted stream frames. Organizations running H2O servers face potential service disruption from availability attacks, with no public exploit identified at time of analysis. Immediate inventory and mitigation assessment are required to prevent denial-of-service incidents.
No vendor-released patch identified at time of analysis. Interim mitigations include: (1) Reduce H2O stream concurrency limits below defaults to limit per-connection memory multiplier; (2) Implement connection-level rate limiting and maximum concurrent streams per peer at reverse proxy/load balancer; (3) Deploy request-size and bandwidth throttling to increase attack cost; (4) Configure memory usage monitoring and auto-restart thresholds; (5) Position DDoS/WAF service upstream to filter suspicious QUIC frame patterns if feasible.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Affected Products (CPE)NVD
Denial of service in Quicly, the QUIC protocol library embedded in the H2O HTTP server, allows remote attackers to corru
Remote denial of service in quicly, the IETF QUIC implementation used by the H2O HTTP server, allows unauthenticated att
Quicly, an IETF QUIC protocol implementation, is susceptible to a denial-of-service attack prior to commit d9d3df6a8530a
Quicly is an IETF QUIC protocol implementation. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitab
Stateless reset injection in Quicly, the IETF QUIC implementation embedded in the H2O HTTP server, allows an on-path net
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB