A propos de la sécurité des environnements virtuels Serge RICHARD - CISSP (IBM Security Systems) serge.richard@fr.ibm.com
La virtualisation, de quoi parlons nous «Virtualiser» un objet informatique, ou le rendre virtuel, signifie le faire apparaître sous son seul aspect fonctionnel, indépendamment de la structure physique et logique sous-jacente. En matière de technologies de l information (TI) de l entreprise, la virtualisation modifie l architecture technique car elle permet l exécution de différentes ressources dans un environnement unique. La virtualisation, en tant que terme et concept, est largement utile et peut être appliquée à différents domaines : serveurs, stockage, processeurs, mémoire, postes de travail, réseau peuvent être virtuels ou virtualisés, etc. Les technologies de virtualisation prennent une part de plus en plus importante depuis les années 2000. Ce phénomène est lié notamment au développement de nouveaux usages comme la virtualisation des postes de travail, la virtualisation des applications d entreprise, la virtualisation du stockage, ou l apparition du cloud computing. 2
Avantages de la virtualisation La mise en place de la virtualisation au sein des technologies de l information de l entreprise comporte de nombreux avantages. 3
Environnement physique versus virtuel La virtualisation consiste à faire fonctionner un ou plusieurs Système d exploitation ou Application sur un ou plusieurs ordinateurs/serveur informatique au lieu d'en installer un(e) seul(e) par machine. Ces ordinateurs virtuels sont aussi appelés serveur privé virtuel (Virtual Private Server ou VPS) ou encore environnement virtuel (Virtual Environment ou VE). Un Hyperviseur est une plate-forme de virtualisation qui permet à plusieurs systèmes d exploitation de travailler sur une même machine physique en même temps 4
Différents types d hyperviseurs Les hyperviseurs sont classés en 2 catégories Type 1 natif et Type 2: Architecture des hyperviseurs de type 1 La para virtualisation : ou hyperviseur de type 1 ou natif encore appelé "bare metal" (littéralement "métal nu"), est un logiciel qui s'exécute directement sur une plate-forme matérielle. Cette plateforme est alors considérée comme outil de contrôle du système d'exploitation. Un système d'exploitation secondaire peut être exécuté au-dessus du matériel. Il implémente la plupart des services que fournissent les noyaux des systèmes d exploitation courants, entre autres la gestion mémoire complète des machines virtuelles ainsi que leur ordonnancement. Parmi les solutions logicielles existantes figurent : - XEN : libre, hyperviseur supportant des différents noyaux. - Oracle VM : propriétaire, hyperviseur sur plateforme x86. - VMware ESX : propriétaire, hyperviseur sur plateforme x86 (produits ESX et ESXi-gratuit). - Hyper V : propriétaire, hyperviseur sur plateforme x64 uniquement. - KVM : libre, module noyau Linux tirant parti des instructions de virtualisation des processeurs Intel et AMD. Architecture des hyperviseurs de type 2 La virtualisation complète : ou hyperviseur de type 2 (hébergé, host-based) ou hypervisor call, ou hypercall, est un logiciel qui s'exécute à l'intérieur d'un autre système d'exploitation. Un système d'exploitation invité s'exécutera donc en troisième niveau au-dessus du matériel. Il utilise les services fournis par le système d exploitation hôte pour gérer la mémoire et l ordonnancement des machines virtuelles. Le microprocesseur, la mémoire de travail RAM ainsi que la mémoire de stockage sont directement accessibles aux machines virtuelles. Parmi les technologies existantes il faut noter : - QEMU : émulateur de plateformes x86, PPC, Sparc, ARM. - Bochs : émulateur de plateforme x86. - VirtualBox: émulateur de plateforme x86. - VMware Server : émulateur de plateforme x86 (produits VWware Server, VMware Player et VMware Workstation). - Virtual PC : propriétaire, émulateur de plateforme x86. - MAC on Linux : émulateur de plateforme Mac OS sur Linux PPC. 5
Architecture des différents types d hyperviseurs 6
Services de sécurité infrastructure Hyperviseur Type 1 Augmentation de la surface d attaque 7
Nouvelles contraintes de sécurité sur l environnement virtuel Menaces traditionnels Nouvelles menaces Les menaces traditionnelles peuvent attaquer les machines virtuelles, tout comme les systèmes classiques Gestion des vulnérabilités Stockage sécurisé des machines virtuelles et des données de gestion Nécessité de nouvelles compétences Espace virtuel Réallocation dynamique Vol de VM Partage des ressources Point de défaillance unique Rootkit furtif dans le matériel Les composants virtuels sont des cibles Augmentation de la surface d attaque 8
Les aspects organisationnels doivent être traités - Séparation des rôles et des tâches - Gestion des processus Problématiques du Cloud (en autre) - Gestion des politiques de sécurité 9
Vulnérabilités sur l environnement virtuel 10
Risques sur l environnement virtuel Etude ANSSI Mai 2012 1. Compromission des systèmes 2. Accroissement du risque d indisponibilité 3. Fuite d information par manque de cloisonnement 4. Complexification de l administration et de la mise en œuvre 5. Complexification de la supervision 6. Prolifération non souhaitée des données et des systèmes 7. Incapacité à gérer voire à comprendre les erreurs 8. Investigations post-incident plus difficiles 11
Problèmes liés à la virtualisation 1/3 (Etude ISACA) Attaques de l infrastructure de virtualisation : Il existe deux types d attaque principaux d une l infrastructure de virtualisation : le détournement de l hyperviseur (ou «hyperjacking») et le saut entre machines virtuelles (MV) (ou «guest-hopping»). a) Le détournement de l hyperviseur est une méthode qui consiste à implanter un hyperviseur malveillant (également appelé moniteur de machine virtuelle (MMV)) sous l architecture légitime (MMV ou système d exploitation) exerçant un contrôle sur toutes les interactions entre le système cible et le matériel. Blue Pill, SubVirt et Vitriol. sont quelques exemples de menaces de type «hyperjacking». b) Le saut entre MV ou «guest-hopping» est une possibilité plus réaliste et représente une menace tout aussi sérieuse. Cette méthode d attaque exploite généralement les faiblesses inhérentes aux hyperviseurs qui permettent aux programmes malveillants ou aux attaques à distance de compromettre les protections de séparation des MV et d avoir accès aux autres MV, aux hôtes ou à l hyperviseur lui-même. Ces attaques sont souvent perpétrées une fois que l attaquant a obtenu l accès à une MV de moindre valeur, moins sécurisée, présente sur l hôte, qui est alors utilisée comme base de lancement pour les futures attaques portées sur le système. 12
Problèmes liés à la virtualisation 2/3 (Etude ISACA) Attaques des fonctions de virtualisation : Aussi nombreuses soient les fonctions de virtualisation susceptibles d être visées pour leur exploitation, on trouve parmi les cibles les plus courantes la migration des MV et les fonctions de mise en réseau virtuel. La migration des MV, si elle est réalisée de façon non sécurisée, peut exposer tous les aspects d une MV donnée à la fois au reniflage passif (ou «sniffing») et aux attaques de manipulation actives. L article «Empirical Exploitation of Live Virtual Machine Migration» (Exploitation empirique de migration de MV en direct) par Oberheide, Cooke et Jahanian, donne des exemples de reniflage de mots de passe et de clés extraits de la mémoire ainsi que des méthodes de manipulation de la configuration des systèmes lors de la migration des MV via le réseau. Y est également décrit un exemple d injection d un programme malveillant dans la mémoire d une MV à la volée. «Virtualization : Enough Holes to Work Vegas (La virtualisation : assez de trous pour travailler), Présentation faite à Las Vegas par D.J. Capelis», une présentation de D.J. Capelis, illustre les problèmes de sécurité relatifs aux fonctions et au support réseau généralement utilisés par les infrastructures de virtualisation. 13
Problèmes liés à la virtualisation 3/3 (Etude ISACA) Défis en matière de conformité et de gestion : L audit de conformité et sa mise en application, tout comme la gestion du système au jour le jour, sont autant de défis à relever lorsqu ils s appliquent aux systèmes virtualisés. L augmentation du nombre de MV représente un défi pour l entreprise. Les MV étant beaucoup plus faciles à mettre en oeuvre et à déployer que les systèmes physiques, le nombre et les types de MV peuvent rapidement devenir ingérables. En outre, la mise en oeuvre des MV étant souvent gérée par différents groupes au sein d une organisation, le service informatique a davantage de difficultés à contrôler les applications, les systèmes d exploitation et les données déployées. 14
Recommandations sur l environnement virtuel Etude ANSSI Mai 2012 1. Adapter la politique de sécurité 2. Mettre en place un processus de veille des vulnérabilités propres aux technologies virtuelles 3. Configurer la solution de virtualisation selon de principe de réduction de la surface d exposition 4. Concevoir une architecte respectant le principe de cloisonnement 5. Utiliser des matériels gérant le cloisonnement 6. Mettre à jour le plan de reprise ou de continuité d activité 7. Dédier une équipe d administration à la solution de virtualisation 8. Prévoir une équipe d administration des machines virtuelles 9. Former les équipes d administration, d audit et de supervision 15
Alarms CRT MJR MNR PWR Status ON 1 2 Alarms CRT MJR MNR PWR Status ON 1 2 Exemple d architecture de sécurité Trust Zone A Trust Zone B Access Control Data Loss Prevention Security Configuration Patching Anti-malware Security Virtual Machine Security Virtual Machine Firewall Intrusion Prevention Malware Detection Virtual Switch Virtual Switch Virtual Switch Access Monitoring Access Control Security API Hypervisor Security API Hypervisor Firewall Vuln Assessment Asset Discovery Intrusion Prevention Network Policy Data Loss Prevention 16
Approche des solutions éditeurs Solutions qui s intègrent dans l infrastructure des architectures de virtualisation 17
Certifications des environnements de virtualisation Certification Common Criteria (liste non exhaustive) 18
Références - Février 2013 http://fr.wikipedia.org/wiki/s%c3%a9curit%c3%a9_des_hyperviseurs#cite_note-51 http://www.ssi.gouv.fr/img/pdf/2012_05_29_-_guide_1343_-_problematique_de_securite_virtualisation_3_9.pdf http://www.colloque-rsi.com/files/2010/presentations/d-boteanu.pdf http://www.isaca.org/knowledge-center/research/researchdeliverables/pages/virtualization-benefits-and-challenges.aspx http://www.isaca.org/knowledge-center/research/documents/virtualization-security-checklist-26oct2010-research.pdf http://www.isaca.org/journal/past-issues/2011/volume-1/pages/auditing-security-risks-in-virtual-it-systems-french.aspx http://fr.wikipedia.org/wiki/fuite_d%27informations_dans_les_environnements_virtualis%c3%a9s http://www.tml.tkk.fi/publications/c/25/papers/reuben_final.pdf http://www.commoncriteriaportal.org/ 19