FINDING · DETECTION

Iran's censor contains an implementation bug: when the Content-Length header carries an invalid (non-integer) value and a Transfer-Encoding header is also present, the censor gracefully skips the invalid CL value and attempts to parse subsequent traffic, but fails to correctly interpret the TE header—causing it to pass the smuggled (censored) request. This bug enabled 254 of 2,015 evaluated test vectors to bypass Iranian censorship, all using the CL*/TE or CL/TE* vector types.

From 2024-m-ller-turningTurning Attacks into Advantages: Evading HTTP Censorship with HTTP Request Smuggling · §5.2 / §5.3 · 2024 · Free and Open Communications on the Internet

Implications

Tags

censors
ir
techniques
dpipacket-injectionkeyword-filtering
defenses
geneva

Extracted by claude-sonnet-4-6 — review before relying.