2015-crandall-forgive
findings extracted from this paper
-
The fragment cache side channel is the most widely applicable TCP/IP side channel, capable of eliciting responses even from hosts behind host firewalls because it operates at Layer 3 (IP fragments). When combined with a Layer 4 technique such as the SYN backlog scan, it can distinguish censorship implemented at Layer 3 versus Layer 4, though fragment cache implementations vary widely across OSes and devices.
-
Approximately 1% of the IPv4 address space has globally incrementing IP ID counters, making IPID idle scans viable for Internet-scale censorship detection at roughly 5 packets per second. The technique is well-understood in terms of noise properties but is difficult to apply in IPv6 because the fragment ID field appears only in fragments.
-
Over more than 10 years of ONI client-side measurements conducted in 77 countries—of which 42 were found to implement some form of filtering—no participating user was ever arrested, apprehended, pressured, or intimidated by authorities. However, HTTP GET requests to sensitive URLs are made without obfuscation or anonymization, and in countries with restrictive legal frameworks this activity could be viewed as subversive by authorities sensitive to exposure of censorship infrastructure.
-
To reduce risk to human subjects in side-channel censorship measurements, researchers can substitute gateway routers near the target client in place of the client machine itself—the approach used by Censored Planet—or perform measurements across entire /24 subnets so that no individual can be incorrectly associated with the measurement traffic. For the ICMP rate-limit side channel, the 'client' can be an unresponsive IP address, measuring the gateway router rather than any end-user machine.
-
The SYN backlog side channel can detect censorship for any Internet host with an open port at approximately 5 packets per second without causing denial of service, provided only one measurement machine targets any given server at a time. Updated implementations require only that the backlog be half full rather than requiring full exhaustion, eliminating the earlier DoS requirement.