Towards More Effective Censorship Resistance Systems
Total Page:16
File Type:pdf, Size:1020Kb
Towards more Effective Censorship Resistance Systems by Mohammad Tariq Elahi A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Doctor of Philosophy in Computer Science Waterloo, Ontario, Canada, 2015 © Mohammad Tariq Elahi 2015 Some rights reserved. BY NC SA This thesis consists of material all of which I authored or co-authored: see Statement of Contributions included in the thesis. This is a true copy of the thesis, including any required final revisions, as accepted by my examiners. I understand that my thesis may be made electronically available to the public. ii Statement of Contributions The content in Chapter 2 was co-authored with Colleen Swanson, who provided the dis- cussion of the global adversary and the failed limited sphere of influence assumption. John Doucette provided the framework and preliminary analysis of the simple censor cases, Steven Murdoch provided the real world problem motivation and the simulator and its de- scription, and Hadi Hosseini provided a portion of the related work discussion in Chapter 3. George Danezis provided a sketch and core code for the two PrivEx variants in Chapter 4. Kevin Bauer provided the Tor simulation patch and scripts while Mashael AlSabah pro- vided the related work discussion in Chapter 5. The rest of this thesis contains original content and was authored under the supervision of Ian Goldberg. iii Abstract Internet censorship resistance systems (CRSs) have so far been designed in an ad-hoc manner. The fundamentals are unclear and the foundations are shaky. Censors are, more and more, able to take advantage of this situation. Future censorship resistance systems ought to be built from strong theoretical underpinnings and be based on empirical evidence. Our approach is based on systematizing the CRS field and its players. Informed by this systematization we develop frameworks that have broad scope, from which we gain general insight as well as answers to specific questions. We develop theoretical and simulation- based analysis tools 1) for learning how to manipulate censor behavior using game-theoretic tactics, 2) for learning about CRS-client activity levels on CRS networks, and finally 3) for evaluating security parameters in CRS designs. We learn that there are gaps in the CRS designer’s arsenal: certain censor attacks go unmitigated and the dynamics of the censorship arms race are not modeled. Our game- theoretic analysis highlights how managing the base rate of CRS traffic can cause stable equilibriums where the censor allows some amount of CRS communication to occur. We design and deploy a privacy-preserving data gathering tool, and use it to collect statistics to help answer questions about the prevalence of CRS-related traffic in actual CRS commu- nication networks. Finally, our security evaluation of a popular CRS exposes suboptimal settings, which have since been optimized according to our recommendations. All of these contributions help support the thesis that more formal and empirically driven CRS designs can have better outcomes than the current state of the art. iv Acknowledgements الْحَمْدُ رَبِّل َِل ّهِ الْعَالَمِين These too few and inadequate words on this page can not convey the gratitude that I have for the many mentors and supporters who have made possible this work, nor can the sum of their influence and impact on myself and where I now stand be bound between these covers; and yet, to thank them I must try. Foremost is Ian Goldberg, my supervisor. I am truly indebted to him for his generosity; from the freedom to take my time to explore and pick my topic, to the copious funding that allowed me to focus on research, to all the time that I stole away by walking into his always-open office with questions, and to the always collegial manner in which heshared his knowledge and helped me work towards answers. I am grateful to Nick Hopper for agreeing to be my external examiner and for spear- heading the many areas of Internet censorship resistance that make it an interesting and active field. I am grateful also to Srinivasan Keshav and Bernard Wong for their invalu- able critique and feedback of my research proposal and along with Mahesh Tripunitara for agreeing to be on my examining committee. I would like to thank my many co-authors, especially Mashael Alsabah, Kevin Bauer, George Danezis, Roger Dingledine, John Doucette, Hadi Hoseinni, Steven Murdoch, and Colleen Swanson, for the great fun we have had solving hard problems and fighting the good fight. I would also like to call out my CrySP lab mates Erinn Atwater, Cecylia Bocovic, Navid Esfahani, Sarah Harvey, Kevin Henry, Ryan Henry, Atif Khan, Hassan Khan, Nikolas Unger, Jalaj Upadhyay, and certainly not least, Tao Wang, for their gracious mental agility, unconditional emotional support, and overall inclusiveness which made the CrySP lab a home away from home and the Vortex a never-ending ride. Finally, and with great affection, I want to thank my family—Ammi, Baba, Sanobar, Bilal, and Sundus—for your unyielding faith in me as I embarked on this uncharted journey. My dearest wife Mahvish, I will never forget the sacrifices you have made, the endless support you bolstered me up with, and your wit and humor when I was feeling overwhelmed; you have made all the difference. Little Sophia, the wheels on the bus do go roundand round, and may they always turn forever more. v In Memoriam Mehboob Elahi (1951–1998) vi Table of Contents List of Tables xi List of Figures xii 1 Introduction 1 1.1 Motivation .................................... 2 1.2 Contributions .................................. 4 2 A Systematization of Internet Censorship and Resistance 5 2.1 CRS Users and Use Cases ........................... 8 2.2 Internet Censorship ............................... 11 2.2.1 A Model of Censorship Apparatus .................. 12 2.2.2 General Censor Threat Model ..................... 15 2.2.3 General Censor Goals ......................... 16 2.3 Censorship Resistance ............................. 16 2.3.1 Censorship Resistance Components .................. 16 2.4 Attack Surfaces ................................. 21 2.4.1 CRS Information ............................ 21 2.4.2 Dissemination channel ......................... 22 2.4.3 Data channel .............................. 23 2.4.4 Overt and Covert Destinations .................... 23 vii 2.4.5 CRS Client ............................... 24 2.5 Desired CRS Design Goals ........................... 25 2.6 Censorship Resistance Strategies ....................... 27 2.6.1 Exposure Phase ............................. 28 2.6.2 Detection Phase ............................ 32 2.6.3 Response Phase ............................. 35 2.7 Attack Mitigation and Remaining Gaps .................... 37 2.7.1 CRS Information and the Dissemination Channel .......... 37 2.7.2 Data Channel .............................. 39 2.7.3 Overt and Covert Destinations .................... 40 2.7.4 CRS Client ............................... 41 2.7.5 Mitigation Summary and Trends ................... 41 2.8 Revisiting Use Cases—Security and QoS ................... 43 2.9 Revisiting Collateral Damage ......................... 46 2.10 Conclusions ................................... 47 3 Game-Theoretic Approaches to CRS Design 50 3.1 Introduction ................................... 50 3.2 Censorship Games ............................... 52 3.3 A Simple Censor Model ............................ 53 3.3.1 Step 1: Single Round, No Apparatus ................. 53 3.3.2 Step 2: Multiple Rounds, No Apparatus ............... 55 3.3.3 Step 3: Multiple Rounds, With an Apparatus ............ 57 3.4 More Realistic Censor Models ......................... 61 3.4.1 Strategy Simulator ........................... 63 3.4.2 Parameter Analysis ........................... 67 3.5 Closing the Loop ................................ 70 3.5.1 Methodology .............................. 71 viii 3.5.2 Censor Equivalence Classes ...................... 72 3.6 Related Work .................................. 74 3.7 Conclusion .................................... 75 4 Privacy-preserving Collection of CRS Statistics 77 4.1 Introduction ................................... 77 4.2 Background ................................... 79 4.3 Threat Model .................................. 82 4.4 The PrivEx Schemes .............................. 83 4.4.1 PrivEx based on Secret Sharing .................... 83 4.4.2 PrivEx based on Distributed Decryption ............... 85 4.4.3 PrivEx Scheme Comparison ...................... 88 4.4.4 Calculating and Applying Noise .................... 89 4.5 Security Analysis ................................ 94 4.5.1 Resistance to Attacks ......................... 94 4.5.2 Correlation Attack with Auxiliary Information ............ 96 4.5.3 Security Proof for PrivEx-D2 Variant ................. 96 4.6 Implementation ................................. 99 4.6.1 Computational Overhead ....................... 100 4.6.2 Communication Overhead ....................... 102 4.7 Real-World Deployment ............................ 105 4.8 Related Work .................................. 108 4.9 Future Work .................................. 111 4.10 Conclusion .................................... 111 5 An Analysis of Path Selection Security in Tor 113 5.1 Introduction ................................... 113 5.2 Background ................................... 116 ix 5.2.1 Tor Overview .............................. 116 5.2.2 Entry Guard Relays .........................