Branch Privilege Injection - La faille qui transforme votre processeur Intel en passoire
Allez, ce matin, j’enchaine sur un second article lié aux vulnérabilités dans les processeurs. Et contrairement à tout à l’heure où il s’agissait d’AMD, maintenant c’est au tour d’Intel d’être sous les projecteurs. En effet, des chercheurs de l’ETH Zurich (PDF) ont découvert une faille majeure dans l’architecture même des processeurs Intel, baptisée “Branch Privilege Injection” (CVE-2024-45332). Cette vulnérabilité exploite les mécanismes de prédiction de branche (des composants essentiels à la vitesse d’exécution) pour contourner les protections matérielles contre Spectre-BTI en place depuis 2018.
Du coup n’importe quel processeur Intel depuis la 9e génération est une passoire potentielle car Intel nous offre un nouveau cadeau empoisonné puisqu’il rend inefficaces les protections contre Spectre qu’on pensait solides depuis 6 ans. Autant dire qu’on est reparti pour un tour de “patch and pray”.
Pour comprendre cette nouvelle galère, il faut donc se plonger dans les entrailles de nos processeurs qui sont conçus faire constamment des paris sur les instructions futures afin de gagner en vitesse. C’est comme au PMU, sauf que ça s’appelle la prédiction de branche. C’est super efficace quand il devine juste, mais quand quelqu’un manipule ces prédictions, ça devient compliqué.
Depuis Spectre en 2018, Intel a en effet implémenté des protections comme eIBRS (enhanced Indirect Branch Restricted Speculation) pour séparer les prédictions entre différents domaines de sécurité. En théorie, ce que vous faites dans votre espace utilisateur ne devrait jamais influencer les prédictions du noyau du système. Sauf que nos amis de l’ETH Zurich (Sandro Rüegge, Johannes Wikner et Kaveh Razavi) ont découvert que les mises à jour des prédicteurs de branche sont asynchrones.
En clair, cela veut dire qu’il y a un délai entre le moment où le processeur décide de changer de mode (passer de l’utilisateur au noyau) et le moment où les prédicteurs de branche sont réellement mis à jour. Cette microscopique fenêtre temporelle crée une “condition de course” exploitable. Un peu comme si la porte blindée de votre maison restait entrouverte pendant une fraction de seconde à chaque fois que vous l’ouvrez…
Et c’est pas juste une théorie fumeuse de chercheurs en mal de publications puisqu’ils ont concrètement réussi à extraire des données à un taux de 5,6 Ko/s sur un Ubuntu 24.04 tout ce qu’il y a de plus standard, avec toutes les protections activées. Et la démo a été faite sur un processeur Raptor Lake (13e génération), soit du matos hyper récent.
Autant vous dire que serveurs, PC de bureau et portables Intel équipés de processeurs Intel depuis la 9e génération sont potentiellement tous concernés. Ça inclut les gammes Coffee Lake, Comet Lake, Rocket Lake, Alder Lake et Raptor Lake et les chercheurs ont aussi observé des comportements suspects sur les Kaby Lake (7e gen). Par contre, bonne nouvelle pour les utilisateurs d’AMD et tout ce qui est ARM, pas de vuln chez eux. Enfin, pas celle là.
Ce qui rend cette faille inquiétante, c’est qu’elle peut théoriquement permettre à un attaquant de franchir les barrières entre utilisateur et noyau, mais aussi potentiellement entre machines virtuelles ou conteneurs. Pour le cloud computing et tous les environnements multi-locataires, c’est un cauchemar car contrairement à d’autres attaques par canal auxiliaire qui sont souvent plus théoriques que pratiques, celle-ci semble relativement fiable et efficace.
Intel, comme d’habitude, a déjà sorti le parapluie et proposé des mises à jour microcode pour colmater la brèche. Mais devinez quoi, ces correctifs viennent avec une pénalité de performance. En effet, les mesures effectuées par les chercheurs montrent une baisse allant jusqu’à 2,7% sur Alder Lake. Et les mitigations logicielles alternatives sont encore plus gourmandes, avec des impacts entre 1,6% (Coffee Lake Refresh) et 8,3% sur Rocket Lake. Ces chiffres peuvent vous sembler minimes, mais ils s’ajoutent aux ralentissements déjà imposés par les mitigations précédentes de Spectre et Meltdown.
On commence donc à se demander combien de performance cumulée on a sacrifié sur l’autel de la sécurité depuis 2018 car sur certains systèmes, on parle facilement de 10-15% avec toutes les mitigations activées. C’est quand même con d’acheter un PC haut de gamme pour finalement le faire tourner à 85% de ses capacités. Merci Intel !
Quoiqu’il en soit, cette faille n’est pas un bug bizarre isolé. J’vois plutôt ça comme la résultant de ce compromis entre performances et sécurité dans les architectures modernes car plus on pousse les processeurs à être rapides et à deviner ce qui va suivre, plus on crée des espèces d’opportunités pour ce genre d’attaques spéculatives.
Voilà, donc si vous possédez un processeur Intel de 7e génération ou plus récent, n’attendez pas. Comme pour AMD dont je vous parlais tout à l’heure, vérifiez les mises à jour disponibles pour votre BIOS / UEFI et installez-les dès que possible. Et bien sûr, gardez également votre système d’exploitation à jour, particulièrement les noyaux Linux récents qui intègrent des protections supplémentaires.

Entièrement dédiée à la cybersécurité, l'école Guardia est accessible soit directement après le bac (post-bac), soit après un bac+2 ou bac+3. En rejoignant l'école Guardia, vous deviendrez développeur informatique option cybersécurité (Bac+3) ou expert en cybersécurité (Bac+5).