You are on page 1of 26

EA D S I N N O V A TI O N W O RK S

Virtualisation et ou Scurit

Nicolas RUFF / nicolas.ruff () eads.net

EA D S I N N O V A TI O N W O RK S

Introduction
Virtualisation: De nombreux projets en production Virtualisation et scurit Un sujet trs dbattu Mais jamais tranch
Ou peut-tre que le thermomtre a t cass ?

EA D S I N N O V A TI O N W O RK S

Plan
Introduction Dfinition des virtualisations Principes de fonctionnement (simplifis) Risques pour la scurit Conclusion

EA D S I N N O V A TI O N W O RK S

Dfinition
Comment dfinir la virtualisation ?
"En informatique, on appelle virtualisation l'ensemble des

techniques matrielles et/ou logicielles qui permettent de faire fonctionner sur une seule machine plusieurs systmes d'exploitation et/ou plusieurs applications, sparment les uns des autres, comme s'ils fonctionnaient sur des machines physiques distinctes."

Source: Wikipedia

http://fr.wikipedia.org/wiki/Virtualisation

EA D S I N N O V A TI O N W O RK S

Applicatif/Spcialis Dfinition Ne fonctionne que pour une application donne, analyse en laboratoire Repose en gnral des points de contrle prcis l'intrieur de l'application Ex. "bac sable" pour Internet Explorer Applicatif/Gnrique Fonctionne pour toute application en mode utilisateur Repose en gnral sur une interception des appels systme Ex. Microsoft App-V, fonction native de Vista, Systme/Spcialis "Para" virtualisation Ncessite une adaptation de l'invit Ex. Xen Systme/Gnrique "Full" virtualisation Pas de modification de l'invit ncessaire Ex. VMWare, Hyper-V, Virtual PC/Virtual Server mais aussi Xen, Bochs, KVM, VirtualBox,

EA D S I N N O V A TI O N W O RK S

Dfinition

A signaler aussi dans le panorama actuel (liste non exhaustive)

Google Native Client (NaCl) Ncessite une recompilation des applications Excution de code vrifiable dans un "bac sable" Mme principe qu'une machine Java ou .NET mais pour du code x86 Mode x86 virtuel Les processeurs x86 savent muler des tches en mode 8086 depuis toujours

Isolation "en espace utilisateur" Ex. V-Server, OpenVZ,


Virtualisation sur architectures non x86/x64 Ex. Produit Trango de virtualisation sur processeur ARM (rachet par VMWare)

EA D S I N N O V A TI O N W O RK S

Dfinition

Etude Forrester 2009


(Non disponible publiquement mais reprise dans LMI) 124 entreprises interroges 78% ont des serveurs de production virtualiss 20% ont uniquement des serveurs de dveloppement virtualiss Parts de march VMWare: 98% Microsoft: 17% Citrix/Xen: 10%

Consquences pour la suite de cette prsentation


Seul la virtualisation "systme/gnrique" sera traite Exemples donns principalement en environnement VMWare

EA D S I N N O V A TI O N W O RK S

Fonctionnement

Principe de base (vu de la lune)

L'invit fonctionne un niveau de privilge infrieur celui qu'il imagine Remarque: tous les processeurs modernes supportent au moins 2 niveaux de protection (user/supervisor) Le moniteur de machine virtuelle (VMM) traite les erreurs que cela peut occasionner

Pas facile mettre en uvre

Emulation complte de certaines fonctions CPU par le VMM Ex. gestion et protection mmoire
Architecture x86: quelques instructions non virtualisables Ex. LSL, SIDT, L'architecture x86 ne respecte pas les principes de Popek and Goldberg

EA D S I N N O V A TI O N W O RK S

Fonctionnement
Il y a trs peu de "full virtualisation" Les performances seraient inacceptables ! Coopration de l'invit souhaite Echange travers des hypercalls Principe des VMWare Tools, Hyper-V Integration Components, etc. Si le systme invit ne coopre pas Diffrentes techniques pour acclrer la virtualisation Ex. "remplacer" le code privilgi dans l'invit

EA D S I N N O V A TI O N W O RK S

Risques (plan)

Humain Systme invit

Conception Administration Sauvegarde et gestion des pannes

Para-virtualisation et/ou traduction la vole "Virtual Machine Interface" (ex. VMWare Tools) Acclrations & optimisations diverses
VMWare ESX: service console base Linux Hyper-V: partition parent Xen: Dom0

Systme hte (ou administrateur) Hyperviseur


Matriel

Matriel (support processeur et/ou chipset) Logiciel (bogues)

CPU Priphriques

EA D S I N N O V A TI O N W O RK S

Risques (humain)

Le passage des solutions virtualises change la donne


(In)efficacit des outils de supervision "classiques" Existence de "super-administrateurs" (systme + rseau) Peu d'exprience des outils de virtualisation Procdures revoir (dpannage, sauvegarde, etc.) Point(s) de panne En gnral le stockage Voir aussi le bogue du systme de licences VMWare (12 aot 2008) Etc.

Cette partie est en gnral bien traite par ailleurs

Nombreuses documentations et retours d'exprience disponibles dans la littrature Cf. bibliographie

EA D S I N N O V A TI O N W O RK S

Risques (invit)
Risques SSI "classiques"
Intrusion, rebond, etc.

Attention la robustesse du rseau virtuel

ARP Spoofing, mode promiscuous, etc.

Risque marginal: lvation de privilges dans l'invit Scnario utilisateur administrateur ou noyau Ex. faille dans les composants d'intgration

EA D S I N N O V A TI O N W O RK S

Risques (invit)

Nouveau risque: vasion de l'invit


Vers un autre invit, l'hte, ou l'hyperviseur Risque dmontr

Cf. travaux de Joanna Rutkowska sur Xen Cf. avis de scurit VMWare Risque difficile maitriser Complexit technique des attaques
A noter: peu de "preuves de concept" publiques malgr toutes les failles corriges

Absence de maitrise sur les produits


La seule "protection" consiste en gnral dsactiver des options de performance Nombreuses options non documentes

EA D S I N N O V A TI O N W O RK S

Risques (invit)
Nouveau risque: dni de service sur les autres invits
Mthodes

Surconsommation de ressources Crash de l'hte ou de l'hyperviseur Risque dmontr Cf. travaux de Tavis Ormandy Risque galement difficile maitriser Surtout le deuxime

EA D S I N N O V A TI O N W O RK S

Risques (invit)
Remarque
L'invit peut tre victime de toutes sortes d'attaques si l'hte ou

l'hyperviseur est compromis

(Cela semble vident mais des confrences ont quand mme

t faites sur le sujet)

EA D S I N N O V A TI O N W O RK S

Risques (hte)
La cl de vote de tout le systme Les puristes sparent l'hyperviseur de l'hte Concepts de Thin Hypervisor, Bare-Metal Hypervisor, etc.
Mais en pratique, la compromission de l'hte est quivalente

la compromission de l'hyperviseur (et rciproquement)

En gnral un systme d'exploitation classique Windows ou Linux

EA D S I N N O V A TI O N W O RK S

Risques (hte)

Ce qui pose de multiples problmes


Durcissement Gestion des droits d'accs

Application des correctifs


Etc.

Le fond du problme
Les logiciels utiliss ne sont pas adapts aux contraintes de

disponibilit exiges Exemples Avis VMSA-2009-0003: faille dans "ed" affectant VMWare ESX 2.5.5 Presque tous les systmes ont souffert du bogue WxH > 2^32

EA D S I N N O V A TI O N W O RK S

Risques (hyperviseur)
Logiciel (approche VMWare)
Avantages

Plus rapide Indpendant du matriel

Inconvnients

Plus complexe crire


Risque de bogue (avr, cf. avis de scurit existants)

Certains cas sont lourds grer


Ex. problme des instructions non virtualisables

EA D S I N N O V A TI O N W O RK S

Risques (hyperviseur)

Matriel (approche Hyper-V)


Avantages

Plus simple crire Fonctionnellement plus riche

Inconvnients

Lent, dpendant du matriel, et surtout Encore trs mal dfini dans les architectures x86 !
Spcificits AMD vs. Intel Dj 3 rvisions des spcifications
Rev2 introduit NPT / EPT Rev3 introduit Directed-IO / IOMMU

Le processeur Cell est bien meilleur de ce point de vue

EA D S I N N O V A TI O N W O RK S

Risques (matriel)

Priphriques

Le matriel peut contourner les scurits logicielles (ex. DMA) Cf. travaux de Loc Duflot Matriel bogu Cf. bogue du chipset Q35 dcouvert par Joanna Rutkowska

CPU

Les bogues CPU, mythe ou ralit ? Tho de Raadt pense que certains bogues sont exploitables Kris Kaspersky galement (mais aucune dmo) Seule parade: la mise jour du microcode

Remarque: le "fameux" mode SMM

Utilis par Joanna Rutkowska pour contourner la technologie Intel/TXT

EA D S I N N O V A TI O N W O RK S

Virtualisation et scurit

La virtualisation peut aussi servir la scurit


Fiabilit

Duplication Transfert chaud Retour en arrire possible aprs application des correctifs Forensics des invits (mais pas de l'hte) Capture mmoire & disque "parfaite" Environnement d'analyse fiable (si l'hte n'est pas compromis) Malwares Refusent de s'excuter dans les environnements virtuels

Les problmes de scurit sont pris en compte par les diteurs


Ex. scurit des rseaux virtuels dans VMWare ESX
Seuls vont persister les bogues logiciels

EA D S I N N O V A TI O N W O RK S

Conclusion
La virtualisation de systmes Une architecture n'est jamais plus sre aprs avoir t virtualise Il est possible de limiter la casse Mais l'impact d'un bogue logiciel est (et restera) souvent catastrophique Une architecture virtualise ne se gre pas comme une

architecture physique

EA D S I N N O V A TI O N W O RK S

Conclusion
Le futur (ou pas)
Plus de fonctionnalits == plus de failles

VMSafe : qui veut vraiment mettre un antivirus dans son hyperviseur ?

La virtualisation comme moyen d'attaque

Mebroot + Blue Pill = catastrophe ?

EA D S I N N O V A TI O N W O RK S

Conclusion
Qui a parl en premier de "ring -1" ?
Le projet Palladium/NGSCB Avec Intel/TXT et AMD/SVM toutes les technologies sont en place La preuve ?
Spcifications TPM disponible sous NDA uniquement Mots de passe dans les processeurs (SVM_LOCK)

EA D S I N N O V A TI O N W O RK S

Bibliographie

Tavis Ormandy

An Empirical Study into the Security Exposure to Hosts of Hostile Virtualized Environments http://taviso.decsystem.org/virtsec.pdf

Oded Horovitz

Virtually Secure http://cansecwest.com/csw08/csw08-horovitz.ppt

DoD

ESX Server Security Technical Implementation Guide http://iase.disa.mil/stigs/stig/esx_server_stig_v1r1_final.pdf

Etude Forrester
http://www.lemondeinformatique.fr/actualites/lire-le-stockage-aucoeur-des-problemes-de-la-virtualisation-selon-forrester-28191.html

EA D S I N N O V A TI O N W O RK S

Bibliographie

HSC / OSSIR
"VMWare et scurit"

http://www.ossir.org/sur/supports/2008/OSSIR_VMware_20080 807.pdf

HSC / CLUSIF
"Scurit et Virtualisation"

http://www.hsc.fr/ressources/presentations/clusifvirtualisation/index.html.fr

MISC Magazine n42


"La virtualisation, vecteur de vulnrabilit ou de scurit ?"

http://www.miscmag.com/index.php/2009/03/06/miscn%C2%B042-la-virtualisation-vecteur-de-vulnerabilite-ou-desecurite-marsavril-2009-chez-votre-marchand-de-journaux

You might also like