Spectre donne des sueurs froides à AMD avec une nouvelle incarnation

Spectre donne des sueurs froides à AMD avec une nouvelle incarnation

Des chercheurs ont découvert une nouvelle variante du bug Spectre. Cette fois, ce sont surtout les processeurs AMD basés sur Zen qui sont vulnérables aux attaques pouvant détruire le mur entre les environnements virtualisés.

Des chercheurs de l’université ETH de Zurich ont découvert une nouvelle variante de la vulnérabilité vicieuse Spectre qui affecte principalement les puces AMD. L’attaque basée sur Spectre permet aux criminels de voler des données de la machine hôte à partir d’un environnement virtualisé. C’est dangereux dans le contexte du cloud, où différents clients utilisent des machines virtuelles côte à côte sur un seul serveur hôte. La séparation entre ces environnements et l’hyperviseur sous-jacent est essentielle à la sécurité de cette approche.

C’est précisément cette séparation qui est menacée par le bug, que les chercheurs ont baptisé VMscape. Ils ont montré comment ils pouvaient voler des données du serveur hôte Zen 4 à partir d’un environnement virtualisé grâce à leur attaque. Ils ont ainsi dérobé une clé de chiffrement. Il est frappant de constater que ce bug ne nécessite pas que l’attaquant modifie du code quelque part. Cela rend VMscape plus facilement exécutable que d’autres variantes.

Spectre et exécution spéculative

Tous les bugs Spectre sont basés sur le même principe : l’abus de l’exécution dite spéculative. Il s’agit d’une technique par laquelle les processeurs modernes prédisent quelle instruction suivra une instruction qu’ils n’ont pas encore complètement exécutée. Cette prédiction est réalisée avec une grande précision. La technique est en partie responsable des hautes performances des processeurs d’aujourd’hui.

Les bugs Spectre parviennent, via des instructions conditionnelles introduites subrepticement par les mécanismes de prédiction, à lire subrepticement des portions de la mémoire auxquelles ils ne devraient en réalité pas avoir accès. Il est ainsi possible de faire fuir lentement mais sûrement des secrets de la mémoire sécurisée du processeur.

lire aussi

Spectre donne des sueurs froides à AMD avec une nouvelle incarnation

L’exécution spéculative est intégrée matériellement dans l’architecture des CPU modernes. Un fabricant ne peut donc pas simplement écraser un bug avec une mise à jour du firmware. La seule façon de protéger les CPU contre les nouvelles vulnérabilités Spectre est la mitigation. En pratique, un patch de firmware peut empêcher les abus, mais les utilisateurs paient un prix sous la forme d’une exécution spéculative moins efficace, ce qui se traduit par une baisse des performances.

Difficile à résoudre

Spectre existe depuis 2018. Les fabricants de CPU tels qu’Intel et AMD essaient d’intégrer l’exécution spéculative en toute sécurité dans les nouveaux CPU, mais ETH Zurich montre maintenant que cela n’a toujours pas complètement réussi. Dans le cas d’AMD, toutes les puces basées sur Zen 1 à Zen 5 sont vulnérables. Cela concerne donc également les puces Epyc, qui sont populaires dans le cloud.

Pour VMscape, l’impact ne semble heureusement pas dramatique. Une mise à jour du noyau Linux atténue le bug avec un impact limité sur les performances. Les chercheurs eux-mêmes ont constaté une surcharge d’environ un pour cent après le patch.

AMD n’est pas le seul à être touché par le bug. Les processeurs Intel Coffee Lake sont également vulnérables. Coffee Lake date cependant de 2017, de sorte que le problème n’est pas si important en pratique.