Rappel
Meltdown est une vulnérabilité matérielle découverte exclusivement dans les microprocesseurs Intel x86 qui permet à un processus non autorisé l'accès privilégié à la mémoire. La vulnérabilité ne semble pas affecter les microprocesseurs AMD.Un code Common vulnerabilities and Exposures : CVE-2017-5754 a été émis.
Spectre est une vulnérabilité matérielle de certaines implémentations de la prédiction de branchement, qui affecte les microprocesseurs modernes dotés de l'exécution spéculative ; cette vulnérabilité permet de récupérer des informations potentiellement sensibles en forçant un programme à accéder à des zones arbitraires de l'espace mémoire qui lui est alloué. Deux identifiants de Common Vulnerabilities and Exposures (CVE) liés à Spectre, CVE-2017-5753 et CVE-2017-5715, ont été émis.
Spectre est une vulnérabilité qui permet de faire en sorte qu'un programme accède à des emplacements arbitraires de la mémoire vive allouée à celui-ci. Un attaquant peut lire le contenu de la mémoire accédée ainsi, ce qui peut potentiellement lui permettre d'obtenir des données sensibles.
Le rapport sur Spectre décrit une classe de vulnérabilités potentielles. Elles sont toutes basées sur l'exploitation des effets secondaires de l'exécution spéculative, un moyen de masquer la latence de la mémoire et donc d'accroître la vitesse d'exécution des microprocesseurs modernes. Plus précisément, Spectre concerne la prédiction de branchement, qui est un aspect de l'exécution spéculative. Contrairement à Meltdown, à laquelle Spectre est associée du fait de la simultanéité de leurs découvertes, Spectre ne s'appuie pas sur une fonction spécifique de la gestion et du système de protection de la mémoire d'un seul processeur, mais est un concept plus général.
L’histoire n’est pas encore à son dernier chapitre
Une équipe de recherche, comprenant des chercheurs à l'origine de la découverte de Meltdown, Spectre et des attaques associées Foreshadow et BranchScope, a publié un nouveau document révélant d'autres attaques dans les familles Spectre et Meltdown. Le résultat ? Sept nouvelles attaques possibles. Certaines peuvent être atténuées par des techniques d'atténuation connues, mais d'autres non. Cela signifie que des travaux supplémentaires sont nécessaires pour protéger les systèmes vulnérables.
Les chercheurs ont entrepris une analyse systématique des techniques impliquées dans les exploits de Spectre et de Meltdown, et c'est ainsi que les nouvelles variantes ont été découvertes.
L'un des exploits récemment découverts utilise les clés de protection (PKU) d'Intel, et Peter Bright explique:
Les clés de protection introduites avec Skylake permettent à une application de marquer des morceaux de mémoire avec une clé à quatre bits. Les applications configurent le processeur pour qu'il utilise une clé de protection particulière et, pendant ce temps, toute tentative d'accès à la mémoire étiquetée avec une clé différente générera une erreur. Encore une fois, quelques nanosecondes de spéculation peuvent se produire entre la création d’un accès invalide (accès à la mémoire avec une clé de protection incohérente) et le signalement de l’erreur, permettant la fuite des informations à protéger.
Ceci, et un autre exploit tirant parti des MPX (Memory Protection eXtensions) d’Intel, sont tous deux liés à Meltdown, mais il en existe cinq autres qui sont liés à Spectre.
Au total, cinq scénarios de prédiction erronés différents ont été identifiés (quatre basés sur des prédicteurs de branche, un basé sur les mémoires stockées étant momentanément ignorées). Sur les quatre attaques de prédicteur de branche, chaque attaque peut être utilisée soit contre le même espace adresse, soit contre un autre, et elle peut être utilisée contre la même branche ou une branche associée. Cela crée 16 variantes basées sur un prédicteur de branche ainsi que l'attaque basée sur un store. Jusqu'à présent, toutes les combinaisons n'ont pas encore été testées, mais plusieurs nouvelles attaques de style Spectre sont décrites dans le document. Ils utilisent diverses combinaisons du prédicteur exploité, de l'adresse attaquée et de l'espace d'adressage attaqué.
En particulier, il a été démontré que l’une des variantes des attaques Spectre d’origine avait une applicabilité supérieure aux derniers processeurs d’AMD par rapport à celle connue jusqu’à présent; de même, l'attaque s'est également révélée efficace contre les processeurs ARM.
Les vendeurs en ont été informés
L’équipe de recherche a déclaré avoir communiqué toutes ses conclusions aux trois fournisseurs de processeurs dont ils avaient analysé les processeurs, mais que seuls ARM et Intel avaient reconnu leurs conclusions.
En outre, l’équipe de recherche a découvert que certaines mesures d’atténuation déjà appliquées par les fournisseurs n’étaient pas parvenues à arrêter les sept nouvelles attaques, même si elles auraient dû l’être, du moins en théorie. Ils fournissent au tableau suivant les résultats de leurs tests des mesures d’atténuation existantes.
Intel, semble-t-il, n'est pas inquiet. En réponse aux affirmations de l'équipe de recherche, Intel a fourni la déclaration suivante, suggérant que les mesures d'atténuation testées par les chercheurs n'avaient peut-être pas été appliquées correctement :
Envoyé par Intel