DISSERTATION DOCTEUR DE L UNIVERSITÉ DU LUXEMBOURG EN INFORMATIQUE Diego KREUTZ Dissertation Defence Committee
Total Page:16
File Type:pdf, Size:1020Kb
PhD-FSTM-2020-52 The Faculty of Sciences, Technology and Medicine DISSERTATION Defence held on 15/09/2020 in Luxembourg to obtain the degree of DOCTEUR DE L’UNIVERSITÉ DU LUXEMBOURG EN INFORMATIQUE by Diego KREUTZ Born on 29 November 1979 in Santa Rosa (Brazil) LOGICALLY CENTRALIZED SECURITY FOR SOFTWARE-DEFINED NETWORKING Dissertation defence committee Dr Paulo Esteves-Veríssimo, dissertation supervisor Professor, Université du Luxembourg Dr Björn Ottersten, Chairman Professor, Université du Luxembourg Dr Radu State, Vice Chairman Associate Professor, Université du Luxembourg Dr Jennifer Rexford Professor, Princeton University Dr Sandra Scott-Hayward, Lecturer, Queen’s University Be lfast Acknowledgements I am very proud of and grateful to my supervisors Paulo Esteves-Veríssimo and Fernando M. V. Ramos because I have learned so much with them. One of the few things I am sure of is my eternal debt with them. I am (arguably) sure I am a better researcher now because of them. In fact, I am still learning everyday something new with them. Paulo was also an awesome sort of coach in my personal life as well. He is an impressively smart and knowledgeable person. I have to say, in some ways, he is indeed better than a regular doctor. I know that (probably) just me and him will truly understand the meaning of this statement. IhadoneofthemostinterestingandproductivetimesafterImetJiangshan Yu. He is a very smart, easy going and inspiring researcher and person. Because of him, I started to better understand and to have joy in designing security protocols. JY inspired me in different ways. I consider myself lucky to have met him. I cannot forget to mention Natalie Kirf, Jessica Giro and the BED in general. Jessica Giro was of outstanding administrative support inside the University of Luxembourg. Jessica managed to figure out and propose simple and straightfor- ward solutions to every single hurdle during my affiliation with the University. I must say I am really lucky to have met such sympathetic, positive and professional people like Jessica, always ready to help us in the best way possible. Ihavenowordstothankmyfamily,friendsandgodfortheconstantsupport and comfort. I have to gratefully thank my wife (Rosa Maria) and my mother (Elizabeta Ilzi). Their unbelievably strong faith (and energy) made me arguably stronger at the last minute, when I really needed it. Truth to be said, family and friends are two of the most important things in my life. During the past few years, both my family and friends were of utter most importance to get through the different health issues I had. I got through all of it because of them, no doubt. Finally, I feel the need to mention some friends of mine, that helped me in different ways through out this journey, namely Vinicius Vielmo Cogo, Laly Ortiz, Pedro Costa, Wojciech Agzo, Alberto Mengali, Danilo Spano, Grabiela Gregory, Sina Maleki, Divane Marcon, and Jader Franklin (a.k.a., Deko). Their warmth friendship made me a better person and provided me joy and comfort in several moments of my journey. ii Declaration I, Diego Kreutz, declare that this thesis “Logically centralized security for Software- Defined Networking” and the work presented therein are my own. I confirm that: • this work was done wholly or mainly while in candidature for the degree Docteur de l’Université du Luxembourg; • where any part of this thesis has previously been submitted for a degree or any other qualification at this university or any other institution, this has been clearly stated; • where I have consulted the published works of others, these are clearly at- tributed; • where I have quoted from the works of others, the sources are always given; • where the work presented in this thesis is based on work done by myself jointly with others, I have clearly outlined what was done by others and what I contributed; • with the exception of such quotations, this is entirely my own work; and • I have acknowledged all main sources of help. Signed: Date: iii Abstract Software-Defined Networking (SDN) decouples the control and data planes of tra- ditional networks, logically centralizing the functional properties of the network in the SDN controller. While this centralization brought advantages such as a faster pace of innovation, it also disrupted some of the natural defenses of traditional architectures against different threats. Until now, SDN research has essentially been concerned with the functional side, despite some specific works relating to non-functional properties like ‘security’, ‘dependability’, or ‘quality of service’. Security is an essential non-functional property of SDN. The lack of reliable security by-design mechanisms can quickly lead to the compromise of the entire network. For instance, most of the current security mechanisms in SDN con- trollers lead to exploitable vulnerabilities that allow adversaries to easily control or even shut down the entire control plane. The growing concern regarding insider threats substantially amplifies the problem. The reason lies in the fact that cur- rent Software-Defined Networks (SDNs) (e.g., OpenFlow-enabled networks) rely on weak protection mechanisms. To address these crucial security issues in the SDN control plane, it is necessary, though not sufficient, that we start by securely identifying, authenticating, and authorizing all devices before allowing them to become part of the network. Though SDN security is the central tenet of this thesis, we believe that the problem is much more generic. In essence, there is still a lack of a systematic approach to ensuring such relevant non-functional properties as security, depend- ability, or quality of service. Current approaches are mostly ad-hoc and piecemeal, which has led to efficiency and effectiveness problems. This reflection led us to claim that the successful enforcement of non-functional properties as a pillar of SDN robustness calls for a systematic approach. We further advocate, for its materialization, the re-iteration of the successful formula behind SDN– ‘logical centralization’. In consequence, we propose ANCHOR,asubsystemarchitectureforSDNthat promotes the logical centralization of non-functional properties. We start by pre- senting the general concept and architectural principles, suggesting how they can satisfactorily enhance the current state of the art with regard to any non-functional property (security, dependability, performance, quality of service, etc.). We claim and justify that centralizing such mechanisms is vital for their effectiveness, by allowing us to: define and enforce global policies for those properties; reduce the complexity of controllers and forwarding devices; ensure higher levels of robustness for critical services; foster interoperability of the non-functional property enforce- ment mechanisms; and finally, better foster the resilience of the architecture itself. We focus on ‘security’ as a use case in the rest of the thesis, discussing the special- ization of the ANCHOR architecture to logically-centralized enforcement of security iv properties. However, by presenting a principled solution to the main problem of the thesis (SDN security), we also show the effectiveness of the general ANCHOR concept, opening avenues for further research on its extension to other desirable non-functional properties, such as dependability and Quality of Service (QoS). We identify the current security gaps in SDNs, and investigate the adequate security mechanisms that should populate the architecture middleware, globally and consistently. ANCHOR sets out to provide — in a homogeneous manner to all controllers and forwarding devices — essential security mechanisms such as strong entropy, resilient pseudo-random generators, secure device registration, associa- tion and recommendation, amongst other crucial services. We present the design of those mechanisms and protocols. With the objective of promoting generalized use of encryption and authentication in the control plane, we additionally pro- pose and describe a secure control plane communication infrastructure, Keep It Simple and Secure (KISS), based on a novel lightweight mechanism for generating cryptographic secrets — integrated Device Verification Value (iDVV). iDVV can be used in a number of ways, in a number of protocols, and outperforms widely used alternatives. In the context of this thesis, the KISS infrastructure is set up by ANCHOR and used to ensure the security of interactions amongst it, controllers and forwarding devices. Being conceptually logically-centralized, ANCHOR presents a single-point-of- failure (SPoF) challenge, which we address, through incremental measures, some of which can be selectively present in concrete designs. As a baseline, we harden the design, by endowing it with robust functions in the different modules. We increase assurance by discussing and informally proving correctness of all mech- anisms and algorithms, and we also formally verify the main algorithms through aproof-assistant.Byonlyusingsymmetriccryptography,wemakethesystem Post-Quantum Secure (PQS). We also embed measures to achieve Perfect For- ward Secrecy (PFS) in all algorithms, protecting pre-compromise communications in the presence of successful attacks. Finally, for higher criticality systems, we take additional algorithmic and architectural measures to mitigate the effects of pos- sible security failures. We provide for Post-Compromise Security (PCS) through the semi-automatic restart of operation after a full compromise of ANCHOR.We present as well