Intel

AIKIDO-2026-659314

rustls is vulnerable to Incomplete Internal State Distinction

Incomplete Internal State DistinctionGHSA-2mjx-qc3c-rqvc Published Yesterday

53

Medium Risk

This Affects:

RUSTrustls
0.23.13 - 0.23.44
Fixed in 0.23.45
Are you affected? Scan for Free

TL;DR

Rustls's handshake deframer tracks whether previously buffered handshake data is aligned, but the check only looked at whether the current fragment span was incomplete, not whether any pending handshake message, complete or partial, still remained. A peer that coalesces record layer messages could exploit that gap to have a handshake message processed at the wrong encryption level, letting content that should still require the negotiated handshake keys pass through as if it belonged to an earlier, unencrypted flow. The handshake transcript hash still binds every exchanged message, so an attacker cannot forge or complete a handshake this way, but rustls accepted improperly encrypted or misplaced messages that it should have rejected. The fix redefines alignment to require no pending handshake messages at all, closing the gap.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range.

Background info

rustls is vulnerable to Incomplete Internal State Distinction in versions 0.23.13 - 0.23.44.

How to fix this

Upgrade the rustls library to the patch version.

Are You Affected?

Connect your repositories to instantly see whether vulnerable or malicious packages exist in your codebase.

Free. No credit card required.

Aikido Platform