s2n-tls v1.7.6 fixes silent TLS 1.3 data stripping and QUIC handshake memory leaks
AWS fixes silent data stripping in TLS 1.3 and a memory leak in QUIC handshakes within the s2n-tls library.

Key points
- CVE-2026-16317 allows silent dropping of TLS 1.3 application data records.
- CVE-2026-16318 causes memory leaks during QUIC HelloRetryRequest events.
- s2n-tls version v1.7.6 addresses both issues.
The s2n-tls library, an open-source TLS implementation maintained by AWS, contains two distinct vulnerabilities affecting protocol integrity and memory management. Security operations teams using this library in TLS 1.3 or QUIC deployments should verify their current versions against the latest release to prevent potential data manipulation or resource exhaustion.
Root cause
CVE-2026-16317 stems from missing validation of the outer content_type byte on TLS 1.3 encrypted records. The s2n-tls AEAD implementation hardcodes the expected value in additional authenticated data rather than verifying the actual wire byte. This omission leaves the outer content_type uncovered by the authentication tag, allowing modifications to go undetected by either endpoint during transmission.
CVE-2026-16318 arises from incorrect use of s2n_alloc instead of s2n_realloc within the QUIC transport parameters extension handler. This coding error causes a single memory allocation to leak each time a QUIC-enabled TLS 1.3 connection undergoes a HelloRetryRequest. Such requests occur during normal handshakes when a client offers a key share group the server does not prefer.
Attack path
An active man-in-the-middle attacker can exploit CVE-2026-16317 to silently drop individual application data records within TLS 1.3 connections. Because the outer content_type is not authenticated, the modification remains invisible to both the client and server. This affects all TLS 1.3 connections, impacting both clients and servers, while TLS 1.2 and standard QUIC connections remain unaffected by this specific vector.
Affected versions
- All versions of s2n-tls prior to v1.7.6 are affected by CVE-2026-16317.
- All versions of s2n-tls prior to v1.7.6 are affected by CVE-2026-16318.
- TLS 1.2 connections are not affected by either vulnerability.
- Non-QUIC deployments are not affected by the memory leak issue.
Mitigation
- Upgrade s2n-tls to version v1.7.6 immediately.
- Ensure any forked or derivative code incorporates the new fixes.
- Restart server processes periodically to reclaim leaked memory as a temporary measure for CVE-2026-16318.
- Avoid configuring s2n-tls to use only TLS 1.2, as this removes security benefits and is not recommended.
Signals worth monitoring
Teams usually detect record manipulation by correlating application-layer timeouts with successful TLS session establishment, indicating missing data packets. Monitor for unexplained memory growth in long-running server processes handling QUIC traffic, particularly during periods of high handshake volume. Check whether log entries show repeated HelloRetryRequest events without corresponding connection closures, which may signal the memory leak path. Containment typically involves isolating affected services and restarting processes to free unreachable memory while preparing for updates.
What to do and how to stay safe: s2n-tls
- Audit your infrastructure for any services relying on s2n-tls versions older than v1.7.6.
- Review TLS 1.3 traffic logs for anomalies such as unexpected application data loss or session resets.
- Monitor memory usage trends on servers handling QUIC connections to identify gradual leaks.
- Plan to upgrade to s2n-tls v1.7.6 once the vendor provides an update, ensuring derivative code is also patched.
Step-by-step guide: Out-of-band patches: what small businesses need to know
General security guidance from the Firewall Pulse newsroom. It is not confirmed advice from the organisations named in this story.
Frequently asked questions
Does CVE-2026-16317 affect TLS 1.2 connections?
No, the silent record drop issue only affects TLS 1.3 connections; TLS 1.2 is not affected.
Is there a workaround for the TLS 1.3 record drop?
There is no workaround that fully mitigates CVE-2026-16317. Downgrading to TLS 1.2 avoids the code path but is not recommended.
What triggers the memory leak in CVE-2026-16318?
The leak occurs during normal handshakes when a client offers a key share group the server does not prefer, triggering a HelloRetryRequest.



