censored planet
play

Censored Planet: Measuring Internet Censorship Globally and - PowerPoint PPT Presentation

Censored Planet: Measuring Internet Censorship Globally and Continuously Roya Ensafi AIMS 2018 1 Measuring Internet Censorship Globally PROBLEM: - How can we detect whether pairs of hosts around the world can talk to each other? user ?


  1. Censored Planet: Measuring Internet Censorship Globally and Continuously Roya Ensafi AIMS 2018 1

  2. Measuring Internet Censorship Globally PROBLEM: - How can we detect whether pairs of hosts around the world can talk to each other? user ? Site 2

  3. Measuring Internet Censorship Globally PROBLEM: - How can we detect whether pairs of hosts around the world can talk to each other? user STATE OF THE ART : ? Deploy hardware or software at hosts - (RIPE Atlas, OONI probe) Ask people on the ground, or use VPNs, or research networks - (PlanetLab) THREE KEY CHALLENGES: Site Coverage, ethics, and continuity 3

  4. Thinking Like an “Attacker” … These machines blindly follow Thinking Like an Attacker... Internet protocol rules such as TCP/IP. How can we leverage standard protocol behaviors to detect whether two distant hosts can communicate? 140 million public live IPv4 addresses 4

  5. Measuring Internet Censorship Globally … Remotely! PROBLEM: - How can we detect whether pairs of hosts around the world can talk to each other? user … from somewhere else in the world?. ? Impossible! Site 5

  6. Spooky Scan Spooky Scan uses TCP/IP side channels to detect whether a user and a site can communicate (and in which direction packets are blocked) user ? Goal: Detect blocking from off-path ? * TCP Idle Scan Antirez, (Bugtraq 1998) Site * Detecting Intentional Packet Drops on the Internet via TCP/IP Side Channels Roya Ensafi, Knockel, Alexander, and Crandall (PAM ’14) * Idle Port Scanning and Non-interference Analysis of Network Protocol Stacks Using Model Checking 6 Roya Ensafi , Park, Kapur, and Crandall (Usenix Security 2010)

  7. Augur Augur Augur is a follow up system that uses the same TCP/IP side channels to detect blocking from off-path. user ? Goal: Scalable, ethical, and statistically ? robust system to continuously detect blocking. Site * Augur: Internet-Wide Detection of Connectivity Disruption P. Pearce*, R. Ensafi*, F. Li, N. Feamster, V. Paxson (* joint first authors) 7

  8. TCP/IP TCP Handshake: SYN-ACK RST SYN [IP ID:X] Port status is open/closed SYN/ACK [IP ID: Y] ACK [IP ID:X+1] SYN SYN/ACK SYN/ACK SYN/ACK Port status is open 8

  9. Spooky Scan Requirements Site “User” (Reflector) Must maintain a Open port and global value for IP ID retransmitting SYN-ACKs Measurement Machine Must be able to spoof packets 9

  10. Spooky Scan Reflector IP ID Measurement Reflector machine Site 10

  11. Spooky Scan No direction blocked Reflector IP ID: SYN/ACK 1 7000 Measurement Reflector machine Site 11

  12. Spooky Scan Spooky Scan No direction blocked No direction blocked Reflector IP ID: SYN/ACK 1 7000 RST [IP ID: 7000] 2 Measurement Reflector machine Site 12

  13. Spooky Scan Spooky Scan No direction blocked Reflector IP ID: SYN/ACK 1 7000 RST [IP ID: 7000] 2 Measurement Reflector machine 3 Spoofed SYN [src: Reflector IP] Site 13

  14. Spooky Scan Spooky Scan No direction blocked Reflector IP ID: SYN/ACK 1 7000 RST [IP ID: 7000] 2 Measurement Reflector machine 3 Spoofed SYN [src: Reflector IP] SYN/ACK 4 Site 14

  15. Spooky Scan Spooky Scan No direction blocked Reflector IP ID: SYN/ACK 1 7000 RST [IP ID: 7000] 2 7001 Measurement Reflector machine 3 Spoofed SYN [src: Reflector IP] SYN/ACK 4 RST 5 [IP ID: 7001] Site 15

  16. Spooky Scan SYN/ACK 6 RST [IP ID: 7002] 7 No direction blocked Reflector IP ID: SYN/ACK 1 7000 RST [IP ID: 7000] 2 7001 7002 Measurement Reflector machine 3 Spoofed SYN [src: Reflector IP] SYN/ACK 4 RST 5 [IP ID: 7001] Site 16

  17. Probe [IP ID: 7003] Spooky Scan SYN/ACK 6 RST [IP ID: 7002] 7 No direction blocked Reflector IP ID: SYN/ACK 1 7000 RST [IP ID: 7000] 2 7001 7002 7003 Measurement Reflector machine 3 Spoofed SYN [src: Reflector IP] SYN/ACK 4 RST 5 [IP ID: 7001] Site 17

  18. Probe [IP ID: 7002] Spooky Scan SYN/ACK 5 RST [IP ID: 7001] 6 Site-to-Reflector Reflector IP ID: SYN/ACK 1 7000 Blocked RST [IP ID: 7000] 2 7001 7002 Measurement Reflector machine 3 S p o [ o s r f e c d : C S l Y i e N SYN/ACK n t I 4 P ] Site 18

  19. Spooky Scan SYN/ACK 6 RST [IP ID: 7002] 7 Reflector-to-Site Reflector IP ID: SYN/ACK 1 7000 Blocked RST [IP ID: 7000] 2 7001 7002 Measurement machine 3 5 RST S p o [ o s r f e c d : C S l Y i SYN/ACK e N n t I 4 P ] Site 19

  20. Probe [IP ID: 7004] Spooky Scan SYN/ACK 6 RST [IP ID: 7002] 7 Reflector-to-Site Reflector IP ID: SYN/ACK 1 7000 Blocked RST [IP ID: 7000] 2 7001 7002 7003 Measurement 7004 machine 3 5 RST S p o [ o s r f e c d : C S l Y i SYN/ACK e N n t I 4 P ] Site 20

  21. Spooky Scan Site-to-Reflector No Direction Reflector-to-Site Blocked Blocked Blocked � IP ID1 = 1 � IP ID1 = 2 � IP ID1 = 2 � IP ID2 = 1 � IP ID2 = 1 � IP ID2 = 2 21

  22. Coping with Reflector IP ID Noise Reflector Amplifying the signal Effect of sending N spoofed SYNs: Site-to-Reflector Blocked No Direction Blocked Reflector-to-Site Blocked � IP ID1 = (1 + noise) � IP ID1 = (1 + N + noise) � IP ID1 = (1 + N + noise) � IP ID2 = noise � IP ID2 = noise � IP ID2 = (1 + N + noise) 22

  23. Coping with Reflector IP ID Noise Reflector Amplifying the signal Effect of sending N spoofed SYNs: Site-to-Reflector Blocked No Direction Blocked Reflector-to-Site Blocked � IP ID1 = (1 + noise) � IP ID1 = (1 + N + noise) � IP ID1 = (1 + N + noise) � IP ID2 = noise � IP ID2 = noise � IP ID2 = (1 + N + noise) Repeating the experiment To eliminate the effects of packet loss, sudden bursts of packets, ... 23

  24. Augur for Continuous Scanning Insight: Some measurements much noisier than others. 24

  25. Augur for Continuous Scanning Insight: Some measurements much noisier than others. Probing Methodology: Until we have high enough confidence (or up to): - For first 4s, query IPID every sec Run Send 10 spoofed SYNs - Query IPID - Query IPID 25

  26. Augur for Continuous Scanning Insight: Some measurements much noisier than others. Probing Methodology: Until we have high enough confidence (or up to): Repeat runs and - For first 4s, query IPID every sec use Seq. Hypothesis Testing Run Send 10 spoofed SYNs - Query IPID to gradually build confidence. - Query IPID 26

  27. Augur: Sequential Hypothesis Testing Defining a random variable: if no IPID acceleration occurs if IPID acceleration occurs 27

  28. Augur: Sequential Hypothesis Testing Defining a random variable: if no IPID acceleration occurs if IPID acceleration occurs Calculate known outcome probabilities (priors): Prior 1 : Prob. of no IPID acceleration when there is blocking Prior 2: Prob. of IPID acceleration when there is no blocking 28

  29. Augur: Sequential Hypothesis Testing Trial Update Maximum Likelihood Ratio Site-to-Ref blocking Based on , can we decide No Blocking the blocking case? Ref-to-Site blocking No Yes No Output Unknown 29

  30. Augur Framework 30

  31. Augur Framework All responsive Reflector IPs selection User input Detection Target Reflector Characterization countries 31

  32. Augur Framework All responsive Reflector IPs selection User input Detection Target Reflector Characterization countries Site Site address characterization 32

  33. Augur Framework All responsive Reflector IPs selection User input Detection Target Reflector Characterization countries Probing Site Site address Scheduler characterization 33

  34. Augur Framework All System output responsive Reflector IPs selection Detection/ Ref-to-Site User input Validation blocking — OR — Detection Site-to-Ref Target Reflector blocking Characterization countries — OR — Probing No blocking — OR — Site Error Site address Scheduler characterization 34

  35. THREE KEY CHALLENGES: Coverage, ethics, and continuity Scanning IPv4 on port 80: Coverage - 22.7 million potential reflectors! Compare: 10,000 in prior work (RIPE Atlas) Challenge : Need global vantage points from which to measure 35

  36. Ethics Reflector IP ID: 1000 1001 1002 Reflector SYN/ACK 4 Challenge : Probing RST 5 banned sites from [IP ID: 1001] users’ machines creates risk Site 36

  37. THREE KEY CHALLENGES: Coverage, ethics, and continuity Ethics Use only infrastructure devices to source probes Internet Challenge : Probing User banned sites from users’ machines Global IP ID 22.7 million 236 countries (and creates risk dependent territories) Two hops back from end user 53,000 180 countries 37

  38. THREE KEY CHALLENGES: Coverage, ethics, and continuity Continuity Augur doesn’t depend on end users’ availability, and routers have less downtime, allowing us to collect measurements continuously. Challenge : Need to repeat measurements over time 38

  39. Running Augur Reflectors: 2,050 In the Wild Sites: 2,134 (Citizen Lab list + Alexa Top-10K) Mix of sensitive and popular sites Duration : 17 days Measurements per reflector-site : 47 Overall # of measurements: 207.6 million 39

  40. Top Site-to-Reflector blocking Blocked Sites Reflector Site-to-Reflector Blocked Site Interesting example: - amtrak.com was blocked for 21% of reflectors, 57% of countries (ranked 6) → Collateral damage 40

Recommend


More recommend