CVE-2026-40170

7.5

ngtcp2 · ngtcp2

A stack-based buffer overflow in the ngtcp2 library allows remote, unauthenticated attackers to cause a denial of service via specifically crafted QUIC handshake parameters.

Executive summary

A critical stack buffer overflow vulnerability in the ngtcp2 library, affecting versions prior to 1.22.1, poses a significant risk of service disruption through remote exploitation.

Vulnerability

The vulnerability exists in the ngtcp2_qlog_parameters_set_transport_params function, which performs unsafe memory operations when serializing peer transport parameters into a fixed 1024-byte stack buffer. This allows an unauthenticated remote attacker to trigger a stack buffer overflow by sending oversized parameters during the QUIC handshake when qlog is enabled.

Business impact

Successful exploitation of this vulnerability results in a denial of service, potentially causing the application to crash or become unresponsive. Given the CVSS score of 7.5, the impact is considered high due to the ease of remote exploitation without authentication. Organizations relying on ngtcp2 for network communications face potential service instability and operational downtime if this flaw is targeted.

Remediation

Immediate Action: Update the ngtcp2 library to version 1.22.1 or later immediately to incorporate the necessary bounds checking.

Proactive Monitoring: Monitor network traffic for anomalous QUIC handshake patterns and review system logs for service crashes or memory access violations.

Compensating Controls: If an immediate update is not feasible, disable the qlog callback functionality on the client side to prevent the vulnerable code path from being triggered.

Exploitation status

Public Exploit Available: No (exploit_available: false)

Analyst recommendation

This vulnerability presents a clear risk to service availability for any infrastructure utilizing the ngtcp2 implementation. Security teams should prioritize the deployment of version 1.22.1 across all affected environments to eliminate the risk of memory corruption. If patching is delayed, disabling qlog functionality serves as a necessary and effective temporary mitigation.

Sources