FINDING · DEFENSE
The root vulnerability in ShadowTLS is that the relay cannot authenticate post-handshake data from the real mask site, causing it to silently absorb censor probes. The fix — deployed in ShadowTLS v0.2.3 — has the client re-derive the Application Data encryption key from the server random and the client-relay shared secret; unrecognized records (lacking the shared secret) are transparently forwarded to the mask site, so all censor-visible responses come from the real mask server.
From 2023-wang-chasing — Chasing Shadows: A security analysis of the ShadowTLS proxy · §4 · 2023 · Free and Open Communications on the Internet
Implications
- Design TLS-forwarding proxies so the relay cannot be distinguished from the mask site by any unauthenticated party: all unrecognized traffic must be forwarded verbatim to the mask, making active probing indistinguishable from legitimate browsing.
- Embed a steganographic client-relay authenticator inside a standard TLS record field (e.g., derived from server_random) rather than introducing a new protocol layer, so the authenticator itself is not a fingerprint.
Tags
Extracted by claude-sonnet-4-6 — review before relying.