When Memory Serves Not So Well Memory Errors 30 Years Later
Total Page:16
File Type:pdf, Size:1020Kb
i i i i WHEN MEMORY SERVES NOT SO WELL MEMORY ERRORS 30 YEARS LATER PH.D. THESIS VICTOR VAN DER VEEN VRIJE UNIVERSITEIT AMSTERDAM, 2019 i i i i i i i i Faculty of Science The research reported in this dissertation was conducted at the Faculty of Science — at the Department of Computer Science — of the Vrije Universiteit Amsterdam This work is part of the research programme Cyber Security with project number 628.001.021, which is nanced by the Netherlands Organisation for Scientic Research (NWO) Copyright © 2019 by Victor van der Veen ISBN 978-94-6361-334-7 Cover design by Victor van der Veen Printed by Optima Grasche Communicatie This work was written in Vim, not Emacs i i i i i i i i VRIJE UNIVERSITEIT WHEN MEMORY SERVES NOT SO WELL MEMORY ERRORS 30 YEARS LATER ACADEMISCH PROEFSCHRIFT ter verkrijging van de graad Doctor aan de Vrije Universiteit Amsterdam, op gezag van de rector magnicus prof.dr. V. Subramaniam, in het openbaar te verdedigen ten overstaan van de promotiecommissie van de Faculteit der Bètawetenschappen op donderdag 24 oktober 2019 om 13.45 uur in de aula van de universiteit, De Boelelaan 1105 door VICTOR VAN DER VEEN geboren te Hoorn i i i i i i i i promotor: prof.dr.ir. H. J. Bos copromotor: dr. C. Giurida i i i i i i i i Voor Marieke i i i i i i i i i i i i i i i i “First, it is slightly cheaper; and secondly it has the words DON’T PANIC inscribed in large friendly letters on its cover” Douglas Adams on The Hitchhiker’s Guide to the Galaxy i i i i i i i i i i i i i i i i Acknowledgements “Haha, het is echt het meest vage projectvoorstel dat ik ooit heb geschreven.” This is how Herbert pitched his open PhD position to me, back in 2013. The proposal, indeed, was quite special: “Je zult ook af en toe een tijdje in Californië moeten zitten bij Christopher Kruegel in Santa Barbara” — what a horrible thought. It was only a few months earlier when I nally transitioned from eternal student being to a healthy, happy, functional, well-behaved grown-up. And now I con- sidered going back to that asbestos clinic? What was wrong with me? Clearly, it required a lot of drthinking, discussing, soul searching, and iterating over pros and cons to come to the conclusion that I did not want to ask myself what if? 50 years from now. In other words, I did a PhD because I had fear of missing out. And so I entered my four year rollercoaster ride as a PhD student at the Vrije Universiteit, in the systems and network security group — now known as VUSec. I consider myself extremely lucky to have been a member of this group and I am condent that this dissertation would not exist if it wasn’t for all the bright people I had around me. First and foremost, I would like to thank my promotor, supervisor, and professor, Herbert Bos, for his guidance and support during my journey. He taught me not only how to write coherent stories, he also forced me to think critical and always look for scientic value when pursuing new ideas. His laid-back attitude, great humor settings and considerable basketball skills were a perfect match that made that I very much enjoyed the PhD experience. I honestly could not have wished for of a better supervisor than Herbert. I am deeply grateful to my mentor and copromotor, Cristiano Giurida. Work- ing with Cristiano was truly inspiring. Combined with his incredible amount of systems knowledge, his ability to come up with clever xes and genius work- arounds saved me numerous times. I will always remember that afternoon in Santa Barbara, where I had to “bring in the troops” — Cristiano came over (he was in the ‘neighborhood’ anyway) and managed to turn our theoretical attack into something that actually operated. Cristiano taught me to never settle, always be ix i i i i i i i i x ACKNOWLEDGEMENTS skeptical, and, most importantly, how to perform sound scientic research. I am indebted. Next, I would like to thank my reading committee, namely Michael Franz, Stefan Brunthaler, Mathias Payer, Lucas Davi, Stijn Volckaert, and Henri Bal. I cannot think of a better assembly of researchers with broad expertise on the topics covered in this dissertation to assert my claims. I am thankful that they all took time o their busy schedules to review this thesis. I would like to express my gratitude to two extraordinary people in my life, Ben and Kaveh. I had the pleasure to rst work with both, and later elevate our professional relationship into invaluable friendships. I learned a great deal about life, and research from both Kaveh and Ben. Thank you for the crazy memories. Our friendship is extremely important to me. You are both superstars. I am also grateful for the many other people I had the pleasure to spend time with around the university. First, I would like to express my gratitude to Remco. Although our shared time in the group was short, Remco taught me the most im- portant skills for completing a dissertation: prioritize and focus — whatever you do, think about what and how it contributes to your goal of getting a PhD. I took his advice to heart. Second, I wish to thank Chen. I still miss our breaks where we would come up with new ways of changing the world. I will never forget that hectic night before the TypeArmor submission where you showed me Chinese eciency: our Skype call took less than one minute. Shit on the inkscape! Third, I thank Dennis, with whom I worked closely on my rst paper. I envy his ability to nish such paper two weeks before the deadline, while simultaneously show- ing me that it is ok to write not-so-long-and-complex sentences — those without em-dashes. I would also like to thank Asia. She was always happy to burn some of her expensive cycles on explaining me the simplest basics of low-level systems. She taught me the fundamentals of writing and presenting — be nice to the color blind! Albeit short, it was a delight to work with her; if only it could have been a bit longer. Finally, I wish to express my thankfulness to Martina. Our collabora- tions where never boring, just as pretty much every conference we got to attend. Thank you for all the great nights and good talks. I was fortunate enough to collaborate with many more smart researchers, both local and external to Amsterdam, resulting in a number of co-authored publications. My sincere thanks go to Elias, Alberto, Moritz, Yanick (the 100% premium-quality Italian), Enes, Daniel, Markus, Thorsten, Radhesh, Christopher, Federico, Clémentine, Georg, Matthias, Sebastian, Chris Ouwehand, Andre, Hari- krishnan, Christian, Lionel, Martin, Manolis, Sanjay, Giovanni, Lukas, and Edgar. This thesis would not exist if it wasn’t for you. i i i i i i i i ACKNOWLEDGEMENTS xi VUSec and the Computer Systems department of the Vrije Universiteit are a fantastic place to meet incredible individuals. I relished many CompSys borrel- takeover sessions, especially those for which we needed a 24-hour access card to get out of the building. Thank you Angelos, Alyssa (also for supporting me in San Diego!), Andrei Bacs, Andrei Tatar, Erik van der Kouwe, Istvan, Koen, Koustubha, Lucian, Natalie, Marco, Pietro (my code also has bugs, don’t worry), Sanjay, Sebastiaan, Stephan, and Taddeüs. Thank you for making life bearable. Also thank you Pieter (alles goed?), Dirk, Ceriel, and Marc for the fun conver- sations we had. I also thank my roomies from P456. Erik Bosman, you are the smartest person I ever met and I doubt this will ever change; Arno, your absence was amazing! Thank you Caroline, not only for shielding me from the university’s bureau- cracy, but also for being a beacon of light in troubling times. Because of you, I never had to worry about administrative tasks. On the contrary, I secretly hoped things would fail so that I had an excuse to catch up with Caroline. It was good to have a friendly ear to talk about sorrows other than computer systems. Also thank you Mojca, for arranging many things so swiftly. I also express my grati- tude to my friends and former colleagues of the VU IT department. Support for Linux printing could be improved, but, if I recall correctly, my purple network connection never let me down. California became our second home during my PhD. Our stay in Santa Bar- bara was immense. I thank the UCSB Seclab for hosting me. I am also grateful to Renwei Ge, for inviting me to join the Qualcomm Product Security Initiative in San Diego. I would also like to thank Alex Gantman, Can Acar, David Hartley, and Robert Turner. You made me feel at home, while giving me the opportu- nity to continue doing what I like most. Also thank you, Robert Buhren, for co-interning in a weird time frame. Finally, I express my gratitude to my dear friend, Erik-Paul. It was nice to have a companion like you outside of academia, somebody who could keep me connected to the real world — our mid-week gatherings were a tting way to vent about everything that is wrong with it. I admire your enthusiasm and your incredible pace of coming up with project ideas.