Des chercheurs défient le cryptage de machine virtuelle SEV d’AMD

Des chercheurs allemands en sécurité affirment avoir découvert une nouvelle attaque contre les machines virtuelles (VM) protégées par la technologie de virtualisation sécurisée sécurisée (SEV) d’AMD, qui pourrait permettre aux pirates de récupérer des données de mémoire en clair provenant de machines virtuelles invitées.

La technologie SEV (Secure Encrypted Virtualization) d’AMD, fournie avec la gamme de processeurs EPYC, est une fonction matérielle qui crypte la mémoire de chaque VM de manière à ce que seul l’invité puisse accéder aux données, les protégeant des autres VM / conteneurs et même d’un hyperviseur non approuvé.

Découvert par des chercheurs de l’Institut Fraunhofer de sécurité appliquée et intégrée de Munich, l’attaque par canal latéral de fautes de page, appelée SEVered, profite du manque de protection de l’intégrité du chiffrement de la mémoire principale, permettant à un hyperviseur malveillant de extraire le contenu complet de la mémoire principale en clair à partir de machines virtuelles cryptées par SEV.

Voici le contour de l’attaque SEVered, comme indiqué dans le document :

"Bien que la traduction de l’adresse virtuelle de l’invité virtuel (GVA) de la machine virtuelle soit contrôlée par la machine virtuelle elle-même et opaque à la station HV, elle demeure responsable de la traduction d’adresse de second niveau (SLAT). GPA pour le mappage de l’adresse physique hôte (HPA) dans la mémoire principale.

"Cela nous permet de changer la disposition de la mémoire de la machine virtuelle dans le HV.Nous utilisons cette capacité pour tromper un service dans la machine virtuelle, comme un serveur web, pour retourner des pages arbitraires de la machine virtuelle en clair à la demande d’une ressource de à l’extérieur."

« Nous identifions d’abord les pages cryptées en mémoire correspondant à la ressource, que le service renvoie en réponse à une requête spécifique, en envoyant à plusieurs reprises des demandes de même ressource au service tout en reprogrammant les pages mémoire identifiées. La mémoire de VM en clair. "

Au cours de leurs tests, l’équipe a pu extraire l’ensemble des données de la mémoire de 2 Go d’un serveur de test, qui comprenait également des données provenant d’une autre machine virtuelle invitée.

Dans leur configuration expérimentale, les chercheurs ont utilisé un système basé sur Linux alimenté par un processeur AMD Epyc 7251 avec des services web fonctionnant avec SEV, les serveurs Web Apache et Nginx, ainsi qu’un serveur SSH, un serveur Web OpenSSH dans des machines virtuelles distinctes .

En tant que HV malveillant, les chercheurs ont utilisé la machine virtuelle basée sur le noyau (KVM) du système et l’ont modifiée pour observer quand le logiciel d’un invité accédait à la RAM physique.

Alors que les serveurs Web Apache et Nginx ont une extraction de données mémoire élevée (à une vitesse de 79,4 Ko / s), OpenSSH a un temps de réponse plus élevé qui réduit la vitesse d’extraction à seulement 41,6 Ko / s.

"Notre évaluation montre que SEVered est réalisable dans la pratique et qu’il peut être utilisé pour extraire toute la mémoire d’une machine virtuelle protégée par SEV dans un délai raisonnable", ont déclaré les chercheurs. "Les résultats montrent spécifiquement que les aspects critiques, tels que le bruit pendant l’identification et la collabilité des ressources sont bien gérés par SEVered."

Les chercheurs ont également recommandé à AMD de prendre quelques mesures pour isoler le processus de transition entre l’hôte et l’adresse physique de l’invité (GPA) afin d’atténuer l’attaque SEVered.

La meilleure solution consiste à fournir « une intégrité complète et une protection de la fraîcheur des pages d’invités supplémentaires au chiffrement, comme cela est le cas dans Intel SGX, mais cela implique un coût de silicium élevé pour protéger les VM complètes par rapport aux enclaves SGX ».

Toutefois, combiner de manière sécurisée le hachage du contenu de la page avec le GPA attribué par l’invité peut être une solution efficace et économique qui garantit que les pages ne peuvent pas être facilement échangées en changeant le mappage GPA en mappage HPA.

La recherche a été réalisée par quatre chercheurs Fraunhofer AISEC - Mathias Morbitzer, Manuel Huber, Julian Horsch et Sascha Wessel - qui a été publié dans leur document [ PDF ] intitulé "SEVered : Subversing Virtual Machine Encryption d’AMD".

Dans la même rubrique

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | ... | 25 |

Actu en image