Unified Isolation Architectures and Mechanisms Against Side Channel Attacks for Decentralized Cloud Infrastructures Mohammad-Mahdi Bazm
Total Page:16
File Type:pdf, Size:1020Kb
Unified isolation architectures and mechanisms against side channel attacks for decentralized cloud infrastructures Mohammad-Mahdi Bazm To cite this version: Mohammad-Mahdi Bazm. Unified isolation architectures and mechanisms against side channel attacks for decentralized cloud infrastructures. Software Engineering [cs.SE]. Université de Nantes (UNAM), 2019. English. tel-02417362 HAL Id: tel-02417362 https://hal.inria.fr/tel-02417362 Submitted on 19 Jun 2021 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THESE DE DOCTORAT DE L'UNIVERSITE DE NANTES COMUE UNIVERSITE BRETAGNE LOIRE ECOLE DOCTORALE N° 601 Mathématiques et Sciences et Technologies de l'Information et de la Communication Spécialité : Sécurité Informatique Par Mohammad Mahdi BAZM Architecture d’isolation unifiée et mécanismes de lutte contre les canaux auxiliaires pour infrastructures cloud décentralisées Thèse présentée et soutenue à Nantes, le 08 juillet 2019 Unité de recherche : Laboratoire des Sciences du Numérique de Nantes (LS2N) Rapporteurs avant soutenance : M. Yves Roudier Professeur, Université Nice Sophia Antipolis M. Daniel Hagimont Professeur, IRIT/ENSEEIHT Composition du Jury : Président : M. Pascal Molli Professeur, Université de Nantes Examinateurs : M. Christian Perez Directeur de recherche, Inria M. Louis Rilling Ingénieur cybersécurité, DGA Dir. de thèse : M. Mario Südholt Professeur, IMT Atlantique Co-dir. de thèse: M. Jean-Marc Menaud Professeur, IMT Atlantique Encadrant de thèse: M. Marc Lacoste Ingénieur de recherche, Orange Labs Abstract Since their discovery by Ristenpart [Ristenpart et al., 2009], the security concern of side- channel attacks is rising in virtualized environments such as cloud computing infrastruc- tures because of rapid improvements in the attack techniques. Therefore, the mitigation and the detection of such attacks have received more attention in these environments and consequently, have been the subject of research works. These attacks exploit, for instance, sharing of hardware resources such as the processor in virtualized environments. Moreover, the resources are often shared between different users at very low-level through the virtualization layer. As a result, such sharing allows by- passing security mechanisms implemented at the virtualization layer through such a leaky sharing. Cache levels of the processor are the resources that are shared between instances and play as an information disclosure channel. Side-channel attacks thus use this leaky channel to retrieve sensitive information such as cryptographic keys. Various research works already exist on the detection or mitigation of these attacks in information systems. Mitigation techniques of cache-based side-channel attacks are mainly divided into three classes according to the application layers of techniques in cloud infras- tructures (i.e., application, system, and hardware). The detection is done at OS/hypervisor level due to the potentiality of analyzing virtualized instances at both layers. In this thesis, we first provide a survey on the isolation challenge and cache-based side- channel attacks in cloud computing infrastructures. We then present different approaches to detect or mitigate cross-VM/container cache-based side-channel attacks. Regarding the detection of cache-based side-channel attacks, we achieve that by leveraging Hardware Per- formance Counters (HPCs) and Intel Cache Monitoring Technology (CMT) with anomaly detection approaches to identify a malicious instance. Our experimental results show a high detection rate. We then leverage an approach based on the Moving Target Defense (MTD) theory to interrupt a cache-based side-channel attack between two Linux containers. MTD allows us to make the configuration of a system more dynamic and consequently harder to attack by an adversary, through leveraging shuffling at different levels of systems and cloud. Our approach does not need to apply modifications either to the guest OS or the hypervisor. Experimental results show that our approach imposes a low-performance overhead. We also discuss the challenge of isolated execution, different scenarios to secure running of Linux containers on remote hosts, and various trusted execution technologies for cloud computing environments. Finally, we propose a secure model for distributed computing through using Linux containers secured by Intel SGX, to perform trusted execution on untrusted Fog computing infrastructures. i Résumé Depuis les travaux de Ristenpart [Ristenpart et al., 2009], les attaques par canaux auxil- iaires se sont imposées comme un enjeu sécurité important pour les environnements vir- tualisés, avec une amélioration rapide des techniques d’attaque, et de nombreux travaux de recherche pour les détecter et s’en prémunir. Ces attaques exploitent le partage de ressources matérielles telles que les différents niveaux du cache de processeur entre des locataires multiples en utilisant la couche de virtualisation. Il devient alors possible d’en contourner les mécanismes de sécurité entre différentes instances virtualisées, par exemple pour obtenir des informations sensibles comme des clés cryptographiques. L’analyse des défis d’isolation et des formes d’attaques par canaux auxiliaires basées sur le cache dans les infrastructures virtualisées met en évidence différentes approches pour les détecter ou les contrer, entre machines virtuelles ou conteneurs Linux. Ces approches se distinguent selon la couche où seront appliquées les contre-mesures, applicative, système ou matérielle. La détection reste principalement effectuée au niveau de la couche système ou de virtualisation, ce niveau permettant simplement d’analyser le comportement des instances virtualisées. De nouvelles formes distribuées d’attaques ont aussi pu être mises en évidence. Pour la détection, nous explorons une approche combinant des compteurs de perfor- mance matériels (HPCs) et la technologie Intel CMT (Cache Monitoring Technology), et s’appuyant sur la détection d’anomalies pour identifier les instances malveillantes. Les résultats obtenus montrent un taux élevé de détection d’attaque. Pour la réaction, nous proposons une approche de Moving Target Defense (MTD) pour interrompre une attaque entre deux conteneurs Linux, ce qui permet de rendre la configu- ration du système plus dynamique et plus difficilement attaquable, à différents niveaux du système et du cloud. Cette approche ne nécessite pas d’apporter de modification dans l’OS invité ou dans l’hyperviseur, avec de plus un surcoût très faible en terme de performance. Nous explorons enfin l’utilisation de techniques d’exécution matérielle à base d’enclaves comme Intel SGX (Software Guard Extensions) pour assurer une exécution répartie de con- fiance de conteneurs Linux sur des couches logicielles qui ne le sont pas nécessairement. Ceci s’est traduit par la proposition d’un modèle d’exécution répartie sur des infrastruc- tures Fog pour des conteneurs Linux. Il s’agit d’un premier pas vers une infrastructure répartie sécurisée Fog illustrant le potentiel de telles technologies. iii Acknowledgements First, I would like to thank my PhD advisors, Professors Mario Südholt and Jean-Marc Menaud at IMT Atlantique, and my co-supervisor Dr. Marc Lacoste at Orange Labs for supporting me during these past 3 years. I appreciate all their contributions of time and ideas to make my PhD experience very interesting and productive. I appreciate Marc for his contribution to the edition of our scientific articles and interesting ideas, Mario for helping and supporting me in different steps of my PhD, and Jean-Marc for his good ideas relating to the evaluation of results. Thank you. I would also like to thank my team manager at Orange, Mr. Sebastien Allard. I will never forget his kindness and humanity. He was like a close friend than a manager for me. Members of the security of device team (SDS) have contributed to my personal and professional time at Orange. I’ve had great times with them at different social events. I would like to thank them, especially Pascal. I gratefully acknowledge the funding source of my PhD. I was funded by Orange Labs and french National Association of Research and Technology (ANRT) for 3 years. Finally, I would like to thank my family members, especially my parents for encouraging me in all of my pursuits. I could not finish my PhD without their support. Thank you. v Contents Abstract . .i Résumé . iii Acknowledgements . .v Contents . vii List of Figures . xi List of Tables . xv Introduction 1 1 Context . .1 1.1 Virtualization Technology and Cloud Computing . .1 1.2 Isolated Execution Challenges in DCI . .2 2 Research Objectives . .5 3 Contributions . .6 4 Organization of The Thesis . .7 Background 9 1 Cloud and Virtualization . .9 1.1 Cloud Computing . .9 1.2 Deployment Models . .9 1.3 Services Models . .9 1.4 Virtualization and Cloud Computing . 10 2 Computer Architecture and Modules . 11 2.1 Memory Structure of Computer . 11 2.2 Hardware Performance Counters (HPC) . 15 3 Trusted Computing . 16 1 Isolation Challenge in Cloud Infrastructures: State