FINDING · DETECTION
Iran's HTTP censorship allows the TCP three-way handshake to complete normally before acting on the HTTP GET request: the censor responds with a '403 Forbidden' and simultaneously sends 5 spoofed RST packets to the destination server (3 with in-sequence numbers, 2 with seemingly random offsets). No modifications to TCP/IP or HTTP headers were observed at either endpoint, ruling out a transparent proxy and pointing to inline DPI.
From 2013-aryan-internet — Internet Censorship in Iran: A First Look · §4.2, Figure 3 · 2013 · Free and Open Communications on the Internet
Implications
- Because blocking triggers on the GET request payload, not the connection setup, transports that encrypt all data before the first byte (e.g., TLS-tunneled protocols) defeat this specific mechanism — the censor has nothing to inspect.
- Omitting the HTTP Host header bypasses host-based filtering but causes server-side '400 Bad Request' errors; tools should instead encrypt or obfuscate the Host header rather than strip it.
Tags
Extracted by claude-sonnet-4-6 — review before relying.