agsandrew - stock.adobe.com
Intel, AMD : les processeurs n’en finissent pas de révéler leurs vulnérabilités
Une nouvelle variante de Spectre a été découverte. Les mécanismes de partitionnement prévus pour les prochains processeurs du fondeur n’aideront pas. Mais il y a peut-être plus grave chez AMD.
C’est la semaine dernière que Microsoft et Google ont levé le voile sur une nouvelle vulnérabilité affectant les processeurs Intel, AMD et ARM. S’appuyant encore une fois, et sans trop de surprise, sur les mécanismes d’exécution spéculative, cette variante dite 4 de Spectre n’afficherait toutefois qu’une sévérité modérée.
Un risque limité
Dans sa note d’information, Microsoft évoque le risque d’attaque par code JavaScript, mais assure qu’Internet Explorer, Edge, ainsi que « les autres principaux navigateurs ont pris les mesures nécessaires » pour rendre plus difficiles les attaques par canaux dérobés. De son côté, Intel indique ne pas avoir observé d’exploitation de la variante 4 de Spectre. Et de souligner que les protections déployées pour la première variante de cette vulnérabilité couvrent la variante 4.
Mais le fondeur n’en travaille pas moins à des mises à jour de microcode dédiées à cette dernière et anticipe un nouvel impact sur les performances, tant pour les systèmes clients que serveurs. Il semble toutefois difficile d’y échapper. Intel prévoit des mécanismes de partitionnement pour immuniser la prochaine génération de processeurs Core et Xeon contre les attaques Spectre et Meltdown. Mais ceux-ci devraient être inopérants contre la variante 4 de Spectre : ils concernent spécifiquement ses variantes 2 et 3.
Hélas, ces découvertes ne constituent guère une surprise. Il y a plus de trois semaines, nos confrères de l’allemand C’t annonçaient la divulgation prochaine de rien moins que huit nouvelles vulnérabilités liées aux mécanismes d’exécution spéculative.
D’autres découvertes attendues
Deux chercheurs de l’université de Princeton et un troisième de Nvidia avaient déjà précédemment levé le voile sur des attaques permettant d’accéder aux mêmes informations que Spectre et Meltdown via de tels canaux dérobés, avec une précision plus élevée. Ils les avaient baptisées MeltfownPrime et SpectrePrime.
Début janvier, Clémentine Maurice, chargée de recherche CNRS à l’Irisa, estimait d’ailleurs parfaitement possibles d’autres découvertes comparables, y compris pour d’autres architectures qu’ARM et x86. David Monniaux, directeur de recherche au CNRS, allait plus loin, soulignant que « la complexité des machines actuelles, due à la recherche de hautes performances, avec la présence de nombreuses ressources partagées, est telle qu’il est difficile d’éviter les canaux cachés ».
Le confinement des machines virtuelles menacé
Et les mauvaises nouvelles ne s’arrêtent pas là. Une équipe de chercheurs de l’institut Fraunhofer à Garching, près de Munich, ont trouvé un moyen de contourner le mécanisme d’isolation de la mémoire des machines virtuelles par chiffrement, au sein des puces AMD.
Baptisé SEV, ce mécanisme doit interdire l’accès à la mémoire des machines virtuelles s’exécutant sur un hôte aux autres machines virtuelles, mais également à un hyperviseur potentiellement compromis.
Dans un document résumant leurs travaux, les chercheurs décrivent une attaque, baptisée Severed, qui permet à un hyperviseur malicieux « d’extraire les contenus complets de la mémoire principale, en clair, des machines virtuelles chiffrées par SEV ».
L’attaque ne s’appuie que sur un service de communication à distance, comme un serveur Web, s’exécutant sur la machine virtuelle visée. Mais avec une restriction importante : l’hyperviseur doit avoir été compromis au préalable.
Le processeur, une cible de choix
Malgré ces limites, l’exercice n’est pas dénué d’intérêt. Il souligne encore une fois, et si c’était nécessaire, toute l’attention portée au processeur et à ses capacités d’isolation matérielle de ce qu’il exécute. Et il y a une bonne raison à cela : cette isolation est essentielle dans les environnements mutualisés, comme les infrastructures Cloud.
C’est ainsi en 2016 qu’AMD a présenté SEV, pour permettre le chiffrement de la mémoire d’une machine virtuelle avec une clé lui étant exclusive. La gestion des clés pour sécuriser les échanges de données entre hyperviseur et machines virtuelles étant confié à l’enclave sécurisée du processeur.
Mais il n’a pas fallu longtemps pour que des chercheurs du monde entier se penchent sur les limites de l’approche. Cela vaut ainsi pour SEV, mais également pour les mécanismes ad hoc d’Intel, les instruction SGX introduites avec la famille Skylake lancée à l’été 2015. En mars 2017, des chercheurs de l’université technique de Graz, en Autriche, en avaient souligné les limites, expliquant, sur la base de leurs travaux, que « l’hyperviseur ne protège pas contre un fournisseur cloud éventuellement malicieux ».
Qui étaient ces chercheurs ? Il y avait notamment Daniel Gruss, Clémentine Maurice et Stefan Mangard, des experts des attaques par canaux dérobés dont les travaux sur le correctif Kaiser ont contribué à la découverte des attaques Meltdown et Spectre.