Une nouvelle attaque Spectre a découvert une nouvelle faille dans les défenses qui protègent les processeurs modernes, et les chercheurs l'ont démontrée en extrayant de la mémoire le hash d'un mot de passe root Linux.
Des chercheurs en sécurité ont révélé Branch Target Reuse (BTR), une nouvelle attaque Spectre v2 qui cible les compilateurs juste-à-temps (JIT) et exploite un comportement confirmé par les chercheurs sur des processeurs Intel, AMD et Arm. Ils ont conçu deux exploits de bout en bout visant le noyau Linux. Dans leur démonstration cBPF sur des processeurs Intel modernes, ils ont exfiltré une zone mémoire arbitraire et récupéré le hash d'un mot de passe root depuis un processus su en environ trois à cinq minutes dans les conditions de leurs tests.
Cette attaque ne signifie pas que des pirates peuvent voler à distance un mot de passe root Linux simplement en visitant une machine vulnérable. Elle démontre toutefois que les faiblesses de l'exécution spéculative restent exploitables après des années de mesures d'atténuation contre Spectre, en particulier lorsque du code compilé en JIT entre en collision avec d'anciennes prédictions du processeur.
- Fonctionnement de la nouvelle attaque Spectre
- Des chercheurs démontrent l'exfiltration du hash root de Linux
- Les processeurs Intel, AMD et Arm présentent un comportement vulnérable
- Linux et Oracle ont déjà déployé des mesures d'atténuation contre BTR
- Ce que les utilisateurs de Linux et les équipes de sécurité doivent faire
Fonctionnement de la nouvelle attaque Spectre
Des chercheurs du groupe VUSec de la Vrije Universiteit Amsterdam et de la Scuola Superiore Sant'Anna ont détaillé BTR dans un article accepté à la conférence ACM Conference on Computer and Communications Security (CCS) 2026.
Selon l' analyse de la réutilisation des cibles de branche des chercheurs, l'attaque exploite un décalage entre le code généré en JIT et les informations conservées par le prédicteur de branchement du processeur.
Les processeurs modernes prédisent la prochaine étape d'exécution des logiciels afin d'améliorer les performances. Lorsque du code compilé en JIT est supprimé et que la mémoire sous-jacente est réutilisée pour du nouveau code, le processeur peut conserver une ancienne prédiction de branchement indirect pointant vers l'emplacement de l'ancien code.
BTR transforme cette prédiction obsolète en primitive d'attaque.
L'attaquant entraîne d'abord un branchement indirect à cibler du code généré en JIT. Ce code est ensuite supprimé et sa mémoire réutilisée. Lorsque le branchement est exécuté à nouveau, le processeur peut suivre spéculativement l'ancienne prédiction jusqu'au code nouvellement généré, à un emplacement inattendu. Cette exécution spéculative peut exposer des données qui devraient autrement rester inaccessibles.
Cette découverte ajoute une nouvelle difficulté à un problème de sécurité qui perdure. Spectre v2, également connu sous le nom de Branch Target Injection, a été révélé pour la première fois en 2018 et exploite l'exécution spéculative pour franchir les frontières de sécurité. Le guide d'eSecurityPlanet consacré à la Spectre et Meltdown explique comment les attaques d'origine exploitaient les optimisations des processeurs pour exposer des informations protégées.
Des chercheurs démontrent l'exfiltration du hash root de Linux
La démonstration de BTR la plus frappante ciblait le compilateur JIT classique Berkeley Packet Filter (BPF) du noyau Linux.
Les chercheurs ont créé deux programmes cBPF, un programme d'entraînement et un programme cible, puis les ont installés comme filtres seccomp. Ils ont d'abord exécuté le programme d'entraînement pour entraîner un branchement indirect, puis l'ont supprimé et remplacé par le programme cible dans la même région mémoire.
L'ancienne prédiction de branchement du processeur pouvait toujours pointer vers l'ancien emplacement du code. Lorsqu'elle était déclenchée à nouveau, l'exécution spéculative pouvait entrer dans le programme nouvellement généré à un décalage inattendu, permettant à des instructions contrôlées par l'attaquant de s'exécuter transitoirement.
Les chercheurs ont déclaré que leur exploit de bout en bout pouvait exfiltrer une zone mémoire arbitraire sur des processeurs Intel modernes tout en contournant toutes les mesures d'atténuation activées sur leur système de test.
La preuve de concept exfiltrait les données à environ 8 octets par seconde. Ce débit peut sembler modeste, mais un attaquant n'a pas nécessairement besoin d'extraire de grandes quantités de mémoire pour obtenir quelque chose de précieux.
Les chercheurs ont également développé une version de l'exploit qui contourne la protection facultative de masquage des constantes de cBPF, désactivée par défaut. Ils y sont parvenus en adaptant une technique de JIT spraying qui encode les instructions contrôlées par l'attaquant dans les décalages de saut plutôt que dans les valeurs immédiates.
Dans leur démonstration, les chercheurs ont exécuté su root, ce qui a chargé le hash du mot de passe root dans la mémoire du processus. Leur exploit a ensuite parcouru les structures du noyau Linux, localisé le processus su et sa mémoire mappée, puis finalement trouvé et exfiltré le hash.
D'après les articles consacrés aux résultats des chercheurs, la démonstration complète a récupéré en moyenne le hash du mot de passe root en environ trois minutes sur Intel Raptor Cove et cinq minutes sur Lion Cove. Ces chiffres reflètent des conditions expérimentales précises et ne doivent pas être considérés comme des durées d'exploitation universelles.
Cette étude n'établit pas non plus que BTR est actuellement utilisé dans des attaques réelles.
Linux a connu cette année d'autres problèmes de sécurité bas niveau sérieux. La faille récemment révélée d'évasion de machine virtuelle Januscape Linux a affecté des systèmes KVM utilisant des processeurs Intel et AMD et pouvait permettre à une machine virtuelle invitée de compromettre son hôte.
Les processeurs Intel, AMD et Arm présentent un comportement vulnérable
BTR ne se limite pas à un seul fabricant de processeurs.
Les chercheurs ont déclaré avoir confirmé le comportement sous-jacent lié aux anciennes prédictions de branchement sur chaque processeur testé, couvrant Intel, AMD et Arm. Selon eux, la plupart des systèmes sont probablement concernés, car la prédiction des branchements indirects est fondamentale pour les processeurs modernes.
Cela ne signifie pas que tous les systèmes Intel, AMD ou Arm peuvent être exploités avec la même technique. L'exploitation concrète dépend largement de l'environnement logiciel, du moteur JIT, des gadgets disponibles et des mesures d'atténuation en place.
Les chercheurs ont examiné trois grandes surfaces d'attaque :
- Linux cBPF : Les chercheurs ont développé des exploits de bout en bout fonctionnels capables d'exfiltrer une zone mémoire arbitraire sur le matériel Intel testé.
- Mozilla SpiderMonkey : Le moteur JavaScript et WebAssembly utilisé par Firefox présentait des conditions qui, selon les chercheurs, rendent les attaques BTR réalisables. Ils ont développé une preuve de concept, mais un exploit de navigateur de bout en bout nécessite encore des travaux supplémentaires.
- Oracle GraalVM : Les chercheurs ont démontré une technique permettant de contourner spéculativement le masquage de la mémoire de la sandbox, même si le comportement de compilation et de récupération de mémoire de GraalVM perturbait les entrées obsolètes du prédicteur avant qu'ils puissent achever un exploit de bout en bout.
BTR met en évidence une faiblesse plus large dans l'interaction entre les compilateurs JIT et la prédiction des branchements du processeur, mais les chercheurs n'ont pas démontré le même niveau d'exploitation sur toutes les plateformes ou tous les processeurs testés.
La sécurité des navigateurs reste une surface d'attaque importante, car des pages web malveillantes peuvent interagir avec des moteurs JIT fortement optimisés. Google a par exemple récemment corrigé 108 vulnérabilités de sécurité dans Chrome 154, notamment des failles critiques de sécurité mémoire affectant des composants du navigateur.
Linux et Oracle ont déjà déployé des mesures d'atténuation contre BTR
Les chercheurs ont communiqué leurs résultats en privé aux fabricants de matériel et aux éditeurs de logiciels concernés avant de rendre BTR public. Certaines protections étaient donc déjà disponibles au moment de la divulgation de l'étude.
Les développeurs du noyau Linux ont déployé des correctifs contre l'attaque BPF démontrée avant la divulgation publique de BTR. Les deux vulnérabilités associées sont les suivantes :
- CVE-2026-64507 : Active un vidage de la barrière de prédiction des branchements indirects, ou IBPB, lors de la réutilisation de la mémoire JIT de BPF sur les systèmes x86 dotés des mesures d'atténuation Spectre v2 applicables.
- CVE-2026-64508 : Ajoute à l'infrastructure BPF la possibilité de vider les prédicteurs de branchements indirects avant la réutilisation de la mémoire JIT, empêchant les programmes nouvellement écrits d'hériter des prédictions laissées par le code précédemment exécuté.
Les correctifs du noyau Linux pour ces deux vulnérabilités ont été publiés le 25 juillet et intégrés depuis aux paquets de noyau corrigés et aux branches stables. Les administrateurs doivent appliquer les mises à jour de sécurité fournies par leur distribution Linux.
Oracle a également déployé une mesure d'atténuation dans GraalVM qui randomise les emplacements du cache de code JIT, rendant plus difficile la réutilisation prévisible des régions mémoire.
Selon les chercheurs de BTR, Mozilla a étudié des mesures d'atténuation fondées sur IBPB, mais donne la priorité à l'achèvement et au déploiement de l'isolation des sites. Celle-ci sépare le contenu web dans différents processus, réduisant les données sensibles potentiellement accessibles dans un même espace d'adressage.
Les chercheurs ont indiqué que les fabricants de matériel avaient reconnu leurs résultats, mais qu'ils considéraient des mécanismes existants tels qu'IBPB comme les briques appropriées pour les défenses, laissant aux éditeurs de logiciels le soin de déployer des mesures d'atténuation spécifiques à BTR lorsque nécessaire.
Ce que les utilisateurs de Linux et les équipes de sécurité doivent faire
BTR est une attaque de recherche, et non la preuve d'une campagne en cours, mais sa portée rend cette divulgation pertinente bien au-delà du laboratoire.
L'attaque Linux démontrée ne doit pas non plus être confondue avec une compromission à distance sans clic. Elle nécessite qu'un attaquant exécute du code non privilégié sur le système cible et accède aux fonctionnalités cBPF. Dans la démonstration de VUSec, les chercheurs ont installé leurs programmes cBPF comme filtres seccomp.
Contrairement au JIT eBPF, plus puissant et réservé aux utilisateurs privilégiés, cBPF reste accessible aux programmes non privilégiés. Selon les chercheurs, il est toujours utilisé dans le filtrage des sockets Linux, les filtres seccomp et les chemins de filtrage des paquets employés par des logiciels tels que Docker et Chrome.
Les organisations qui exécutent Linux doivent appliquer les dernières mises à jour de sécurité disponibles auprès de leur distribution Linux, en particulier sur les systèmes où du code non fiable ou moins privilégié peut être exécuté. Les administrateurs doivent également maintenir à jour les environnements d'exécution fortement dépendants du JIT, les navigateurs et les environnements de développement, à mesure que les éditeurs introduisent ou affinent des protections propres aux logiciels.
La leçon générale est que Spectre n'a pas disparu après les correctifs d'urgence de 2018. Les processeurs modernes continuent de s'appuyer fortement sur l'exécution spéculative et la prédiction des branchements pour améliorer leurs performances, tandis que les compilateurs JIT créent, suppriment et réutilisent continuellement du code exécutable. BTR montre comment l'interface entre ces deux systèmes peut créer de nouveaux moyens d'accéder à des données protégées.
Pour les administrateurs Linux et les équipes de sécurité, les vulnérabilités au niveau du processeur sont plus qu'un problème matériel abstrait. La défense concrète peut prendre la forme d'une mise à jour du noyau Linux, d'une nouvelle version du navigateur ou d'un correctif de l'environnement d'exécution, plutôt que d'un nouveau processeur. Il est essentiel de maintenir ces couches à jour, en particulier sur les systèmes partagés où du code non fiable et des charges de travail sensibles fonctionnent côte à côte.
À lire ensuite : les chercheurs ont récemment démontré une autre attaque Spectre ayant exfiltré un JWT d'un Cloudflare Worker, montrant comment les attaques par exécution spéculative peuvent menacer des données sensibles dans des environnements cloud partagés.





