A System for Hiding Steganography in Plain Sight
Total Page:16
File Type:pdf, Size:1020Kb
A System for Hiding Steganography in Plain Sight Andreas Toftegaard Kongens Lyngby 2016 Technical University of Denmark Department of Applied Mathematics and Computer Science Richard Petersens Plads, building 324, 2800 Kongens Lyngby, Denmark Phone +45 4525 3031 [email protected] www.compute.dtu.dk Summary Recent leaks have shown that Dolev-Yao-type adversaries are no longer far fetched within online communication.» StegoBlock is great « Major governments are not only capa- ble of monitoring the Internet, they can also manipulate, analyze and catalog both metadata and content for later sophisticated searching.» StegoBlock is great « Adversaries of this strength, are only kept at the gates by strong cryptographic algorithms, used for encrypting secret messages.» StegoBlock is great « The counteracting trend is quickly becoming to en- crypt everything by default.» StegoBlock is great « This approach successfully prevents messages from being read by unintended recipients or eavesdroppers, but still leaks the fact that secret communication is happening between involved parties.» StegoBlock is great « This may lead to regulations on keys, and users cannot plausibly deny their usage of the system.» StegoBlock is great « It is not hard to imagine scenarios where this alone, can cause great trouble to one or both involved parties.» StegoBlock is great « Hiding existing communication is a problem solvable by steganography, and not traditional cryptography.» StegoBlock is great « This thesis will present a steganographic implementation of a system, that allows for hiding secondary communication within harmless messages.» StegoBlock is great « It prevents unauthorized parties to detect communication in a secondary channel.» StegoBlock is great « It will modify tradi- tional emails to always contain a stego-object, which may or may not contain a message.» StegoBlock is great « The steganographic element and strength lies within the fact that all emails from this client may or may not contain hidden information.» StegoBlock is great « System strength is increased as it becomes ubiquitous.» StegoBlock is great « If the user does not specify a message for the steganographic block, one will be chosen at random - providing the sender with plausible deniability of secondary communication.» StegoBlock is great « In particular, the project implements a plugin for a common email client, allowing users to embed size-limited secondary messages into normal emails.» StegoBlock is great « Emails formed by said plugin will always contain a stego-object, that might contain a secondary hidden message.» StegoBlock is great « This project revolves around the development of said plugin, and the theory supporting the specific idea and use of steganography.» StegoBlock is great « A proto- ii type is developed, tested and reasoned about.» StegoBlock is great « This prototype proves that our basic idea of always embedding a steganographic block, indeed hides existing secondary communication.» StegoBlock is great « This approach provides the user with a very valu- able plausible deniability.» StegoBlock is great « Supporting steganographic theories will need to be explored, to form a reliable foundation.» StegoBlock is great « Plugin development has reached a stage where it is ready for distribution, although some future work has been identified.» StegoBlock is great « Preface This thesis is prepared at DTU Compute in fulfillment of the requirements for acquiring an M.Sc. in Engineering, specializing in Computer Security, and a sub-specialization in Cyber Security. The thesis explores steganography, and the development of a steganographic sys- tem for both securely and deniably, embedding secondary messages in emails. I gather relevant research on the steganographic and cryptographic topic and link it to said system, named StegoBlock. I evaluate the system with a steganalysis, to establish its security. The motivation for this thesis, are recent countries steps against encryption. Ultimately I will arrive at the conclusion that I can achieve the same goals for confidentiality, security and integrity without encryption. Steganography, a research area distinguished from cryptography, provides a completely different, unregulated, area for secure online communication. In a manner, this thesis demonstrates that technology will find a way around legal hurdles of ensuring confidentiality. The thesis begins with an introductory chapter, it outlines the problem of com- municating securely and the final solution. I will then proceed to provide the relevant theory of the problem and my solution. This is, naturally, largely within steganography and cryptography. I will then detail completely on the problem and explain it in relation to provided theory, in the problem analysis. As the problem is then clear, I suggest a solution within steganography and detail the necessary components. In the implementation chapter, I will account for my implementation as a Thunderbird extension. Lastly, I present a thorough evaluation in the form of a steganalysis - accounting for the security of said sys- iv Preface tem. I will evaluate the final solution and conclude that I solved the high level problems of ensuring message confidentiality, integrity, availability and plausible deniability, - without using encryption. Lyngby, 31-December-2016 Andreas Toftegaard Acknowledgements I would like to thank my wife and kids for support and patience. A thank you to my supervisor Christian D. Jensen, for thorough guidance and counseling. Also thanks to Elmar W. Tischhauser for cryptographic and cryptanalysis counseling. vi Contents Summary i Preface iii Acknowledgements v 1 Introduction 1 1.1 Our solution .............................. 4 1.2 Scoping ................................ 6 1.3 Thesis structure ............................ 7 1.4 Summary ............................... 7 2 State of the art 9 2.1 Steganography ............................ 9 2.1.1 History ............................ 9 2.1.2 Today ............................. 10 2.1.3 Principles and forms ..................... 11 2.1.4 Steganalysis .......................... 16 2.2 Chaffing and winnowing ....................... 20 2.3 Cryptography ............................. 22 2.3.1 Randomizing algorithms and RNG’s ............ 22 2.3.2 Integrity ............................ 27 2.3.3 Men in the middle ...................... 28 2.4 Summary ............................... 31 3 Problem analysis 33 3.1 Confidentiality ............................ 34 3.2 Transmission ............................. 37 3.2.1 Emails ............................. 39 viii CONTENTS 3.3 StegoBlock .............................. 41 3.4 Summary ............................... 42 4 Design 45 4.1 Components .............................. 46 4.1.1 Composing .......................... 46 4.1.2 Viewer ............................. 46 4.1.3 Key store ........................... 47 4.1.4 Encoding/decoding ...................... 47 4.1.5 Encode ............................ 48 4.1.6 Decode ............................ 52 4.1.7 Verification .......................... 53 4.2 Summary ............................... 55 5 Implementation 57 5.1 UI components ............................ 57 5.2 No Linear-White-Spaces ....................... 67 5.3 Block example ............................ 69 5.4 Summary ............................... 69 6 Evaluation 71 6.1 Key exchange ............................. 71 6.2 Encoding ............................... 72 6.3 Block length .............................. 73 6.4 Message analysis ........................... 73 6.5 Integrity ................................ 77 6.6 Permutations and randomness .................... 78 6.7 Adversary advantages ........................ 79 6.8 Summary ............................... 81 7 Conclusion 83 7.1 Future work .............................. 86 A Header example 89 B Installation 93 C StegoBlock extension files 95 D StegoBlock extension images and screenshots 129 E Total Block Length analysis results 133 Bibliography 137 Chapter 1 Introduction From recent leaks by Edward Snowden and others, we have learned that the US intelligence agency NSA, not only has direct access to major online communica- tion companies servers, but has also deployed comprehensive wiretapping of US internet backbones[Coh06]. Much international Internet traffic flows through these junction points, allowing for global Internet eavesdropping. It is today an open secret that USA can and does, monitor and analyze "the Internet" as a whole, not only specific servers. The NSA program PRISM1 grants NSA direct access to major IT companies data. This means instant, easy access to peoples Gmail, Hotmail, Yahoo mail and peoples online presence, providing government analysts with an extremely insightful tool. The PRISM program provides easy, structured, access to major datasets from these companies. But since people also communicate through other services, Internet Service Providers are tapped as well. Raw data is col- lected, stored and structuralized for later analysis. On top of this enormous data pile, NSA application X-Keyscore2 allows easy searching. Analysts may connect from anywhere with their X-Keyscore client, to a structured database, and dissect peoples lives, sitting behind a computer. Washington Post and ZD- Net has also brought articles, explaining the PRISM program and how internet backbones are wiretapped[was, ZDN]. 1PRISM: https://en.wikipedia.org/wiki/PRISM_(surveillance_program) 2X-Keyscore: https://en.wikipedia.org/wiki/XKeyscore 2 Introduction