Les fantômes de Spectre et Meltdown ont visiblement la dent dure... Alors qu'on pensait en avoir fini avec ces vulnérabilités qui frappaient les processeurs AMD et Intel, des chercheurs ont découvert une nouvelle vulnérabilité qui touche l'ensemble des processeurs Intel modernes. Une faille qui se présente ainsi comme une variante des attaques Spectre, de type "Branch Privilege Injection".
Le fantôme de Spectre frappe encore
Découverte cette fois par des chercheurs de l'école polytechnique fédérale de Zurich, la faille reprend en partie les mécaniques déjà exploitées par Spectre et Spectre V2 par le passé, à savoir l'exécution spéculative des processeurs. En gros, pour aller plus vite, votre CPU essaie de deviner quelles instructions il devra exécuter à la suite d'une autre. La plupart du temps, ça marche, mais parfois, ça ouvre la porte à des attaques. Spectre exploitait cette fonctionnalité en contournant diverses protections pour accéder à certaines sections de la mémoire du processeur pour piocher quelques brides d'infos ci et là... Des infos aléatoires, mais qui, collectées en suffisamment grandes quantités et en les recoupant, permettent d'accéder ou de deviner des mots de passe, des clés de chiffrement ou autres données du noyau.
Dans cette nouvelle variante, l'attaquant doit tromper les composants Indirect Branch Predictor (IBP, qui améliore l'exécution des programmes) et Branch Target Buffer (BTB, qui optimise les performances de la puce). Ces deux composants encadrent les branches, soit des instructions dans un programme qui orientent le processeur vers différentes parties du code sous certaines conditions. Ces deux composants, afin d'accélérer leur fonctionnement, spéculent sur l'orientation d'une branche ou l'autre, afin de précharger des instructions en mémoire. L'info est ainsi directement accessible au processeur, qui ne perd pas de temps à lancer une requête, mais en contrepartie, les données stockées ainsi peuvent être à la merci d'une faille, extraites, et représenter un risque pour la station de travail et son utilisateur.
La faille réside dans le fait que les mises à jour du prédicteur de branche ne sont pas synchronisées avec l'exécution réelle des instructions. En clair, le processeur peut mettre à jour ses prédictions alors même qu'il est en train d'opérer des instructions alors qu'il peut ne pas avoir les droits d'accès au programme. Exemple : le processeur pourrait ainsi continuer à spéculer sur des instructions à venir, y compris accéder à des données sensibles avant même que le programme à l'origine n'en ait l'autorisation. Pendant un temps limité, le processeur peut ainsi dépasser les privilèges d'accès et surpasser ses droits pour contourner la sécurité d'un programme.
Dans le cadre d'une attaque, le pirate pourrait ainsi pousser le CPU à faire des prédictions sur chaque instruction, demander au système de passer en mode noyau afin que le processeur lise des données sensibles relatives au noyau et les stocke en mémoire, et c'est là que le hacker va aller se servir en accédant, pourquoi pas, à des mots de passe et données sensibles permettant par la suite d'orchestrer une élévation de privilèges et le siphonnage plus large de données.
Quels sont les processeurs dans le collimateur d'InSpectre ?
Selon les experts en sécurité à l'origine de la découverte, la faille est capable de contourner les modules de sécurités déployés par le passé pour atténuer les risques de Spectre V2.
Selon cette logique, tous les processeurs Intel modernes sont concernés par cette vulnérabilité. À l'opposée, AMD a déjà pris la parole pour confirmer ne pas être concernée par cette nouvelle faille.
Correctifs en vue : faut-il vraiment trembler ?
Alors, est-ce la panique générale ? Intel, prévenu en septembre dernier a déjà publié des mises à jour de microcode. La marque explique ainsi avoir renforcé "ses mesures de protection matérielles contre Spectre V2 et recommandé à ses clients de contacter leur fabricant de systèmes afin d'effectuer les mises à jour nécessaires.
La marque indique n'avoir connaissance d'aucune exploitation des vulnérabilités liées à l'exécution spéculative à ce jour.
Notons que, malheureusement, il se peut que ces mises à jour entrainent une atténuation légère des performances des processeurs.