Skip to main content

Quicly CVE-2026-44434

MEDIUM
Insufficient Verification of Data Authenticity (CWE-345)
2026-07-16 GitHub_M
5.3
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
vuln.today AI
3.7 LOW

On-path network positioning is a specialized prerequisite that raises AC to H; no privileges or user interaction required; impact is limited to connection availability.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
Low

Lifecycle Timeline

1
Analysis Generated
Jul 16, 2026 - 23:21 vuln.today

DescriptionCVE.org

Quicly is an IETF QUIC protocol implementation intended primarily for use within the H2O HTTP server. Prior to commit dccf5d4, Quicly was vulnerable to stateless reset injection through lack of packet entry validation. The QUIC protocol is designed to withstand packet injection attacks, once the handshake is complete. Only packets that carry some secret patterns are considered as stateless resets. Quicly allows the peer to share up to 4 such patterns per connection. However, until now, it failed to determine which of the 4 slots that it uses to retain the secret patterns contains a valid entry. As the slots are zero-initialized, the failure meant that, unless the peer advertised 4 of such patterns, an all-zero pattern was treated as a stateless reset.In effect, this allowed an on-path attacker to reset QUIC connections governed by Quicly. This issue has been fixed by commit dccf5d4.

AnalysisAI

Stateless reset injection in Quicly, the IETF QUIC implementation embedded in the H2O HTTP server, allows an on-path network attacker to abruptly terminate any active QUIC connection by sending an all-zero packet. The root cause is that Quicly zero-initializes its four stateless reset token slots but never validates which slots hold legitimate peer-advertised tokens, causing the all-zero default to be accepted as a valid reset signal whenever the peer has advertised fewer than four tokens. No public exploit code or active exploitation has been identified at time of analysis; however, the attack is mechanically straightforward for any adversary already positioned on the network path.

Technical ContextAI

QUIC (RFC 9000) includes a stateless reset mechanism that allows endpoints to signal connection termination without maintaining per-connection state - for example after a restart. To prevent injection attacks, endpoints exchange secret tokens (up to four per connection in Quicly's design) that must appear in a reset packet before it is honored. Quicly (CPE cpe:2.3:a:h2o:quicly:*:*:*:*:*:*:*:*) stores these tokens in four zero-initialized slots but omits validity tracking, so any unfilled slot - containing all zeros - is incorrectly treated as a legitimate secret token. CWE-345 (Insufficient Verification of Data Authenticity) captures this class precisely: the library fails to verify that a received reset token corresponds to one the peer actually advertised, allowing a forged all-zero token to pass the check. This flaw exists within the quicly library itself rather than in a higher-level H2O configuration.

RemediationAI

The upstream fix is available via commit dccf5d4579c7ae9dd6e8f90c36d52e311bb60710 in the h2o/quicly repository (https://github.com/h2o/quicly/commit/dccf5d4579c7ae9dd6e8f90c36d52e311bb60710); no separately tagged patched release version has been confirmed at time of analysis, so operators should update to a revision at or after this commit. For H2O deployments, rebuilding the server against the patched quicly source is the primary remediation. As a compensating control where patching is not immediately possible, disabling QUIC/HTTP3 support in H2O eliminates the attack surface entirely at the cost of falling back to TCP-based HTTP/2 or HTTP/1.1, which removes QUIC performance benefits. Alternatively, network-level controls that restrict the ability of untrusted parties to inject packets on the path between clients and the H2O server (e.g., strict BCP38 ingress filtering at network borders, encrypted tunnels) reduce exploitation feasibility without requiring application changes. These controls address the on-path positioning prerequisite rather than the library flaw itself.

Share

CVE-2026-44434 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy