Des chercheurs de l'Ăcole polytechnique fĂ©dĂ©rale de Zurich, en collaboration avec des ingĂ©nieurs de Google, ont dĂ©veloppĂ© une nouvelle technique d'attaque de type Rowhammer â Phoenix (CVE-2025-6202), permettant de contourner les mĂ©canismes de protection TRR (Target Row Refresh) utilisĂ©s dans les puces DDR5, qui empĂȘchent la corruption des cellules mĂ©moire due Ă la perte de charge. Un prototype d'exploit a Ă©tĂ© publiĂ©, permettant de modifier le contenu d'un bit spĂ©cifique dans la mĂ©moire vive et d'Ă©lever ses privilĂšges au sein du systĂšme. La dĂ©monstration de l'attaque a Ă©tĂ© rĂ©alisĂ©e sur un PC avec un processeur AMD basĂ© sur l'architecture micro Zen 4 et de la mĂ©moire DDR5 SK Hynix, sur lequel des tĂąches typiques de bureau ont Ă©tĂ© exĂ©cutĂ©es.
L'attaque RowHammer permet de distordre le contenu de bits individuels de la mĂ©moire DRAM par la lecture cyclique de donnĂ©es Ă partir de cellules de mĂ©moire adjacentes. Ătant donnĂ© que la mĂ©moire DRAM se prĂ©sente sous la forme d'un tableau bidimensionnel de cellules, chacune composĂ©e d'un condensateur et d'un transistor, le fait d'effectuer des lectures continues d'une mĂȘme zone de mĂ©moire entraĂźne des fluctuations de tension et des anomalies, provoquant une lĂ©gĂšre perte de charge des cellules voisines. Si l'intensitĂ© de lecture est Ă©levĂ©e, la cellule adjacente peut perdre une quantitĂ© suffisamment importante de charge et le cycle de rĂ©gĂ©nĂ©ration suivant ne parviendra pas Ă restaurer son Ă©tat d'origine, ce qui entraĂźnera un changement de la valeur des donnĂ©es enregistrĂ©es dans la cellule.
La mĂ©thode d'attaque Rowhammer a Ă©tĂ© proposĂ©e en 2014, aprĂšs quoi a dĂ©butĂ© un jeu du chat et de la souris entre les chercheurs en sĂ©curitĂ© et les fabricants de matĂ©riel â les fabricants de puces mĂ©moire ont essayĂ© de bloquer la vulnĂ©rabilitĂ©, tandis que les chercheurs trouvaient de nouvelles façons de l'exploiter. Par exemple, pour protĂ©ger contre Rowhammer, les fabricants de puces ont ajoutĂ© le mĂ©canisme TRR (Target Row Refresh), mais il s'est avĂ©rĂ© qu'il bloque la corruption des cellules uniquement dans des cas particuliers, sans protĂ©ger contre tous les types d'attaques possibles. Des mĂ©thodes d'attaque ont Ă©tĂ© dĂ©veloppĂ©es pour les puces DDR3, DDR4 et DDR5 sur des systĂšmes avec des processeurs Intel, AMD et ARM, de mĂȘme que pour la mĂ©moire vidĂ©o utilisĂ©e dans les cartes graphiques NVIDIA. De plus, des moyens de contourner la correction d'erreurs ECC ont Ă©tĂ© trouvĂ©s et des options d'attaque Ă distance ainsi que par l'exĂ©cution de code JavaScript dans le navigateur ont Ă©tĂ© proposĂ©es.
Un facteur clé pour contourner la protection contre la corruption des cellules mémoire dans la DRAM est la compréhension de la logique de fonctionnement du mécanisme TRR, qui repose principalement sur la dissimulation des détails d'implémentation et le principe de « sécurité par l'obscurité » (security by obscurity). Pour déterminer la logique de fonctionnement et effectuer l'ingénierie inverse, les chercheurs ont conçu des cartes spéciales basées sur FGPA Arty-A7 et ZCU104, permettant de tester les modules DDR5 SO-DIMM et RDIMM, d'identifier les modÚles d'accÚs aux cellules mémoire, de déterminer quelles commandes DDR à bas niveau sont transmises aprÚs des opérations logicielles avec la mémoire et d'analyser les réactions à celles-ci.

Il s'est avĂ©rĂ© que la protection des puces DDR5 analysĂ©es est mise en Ćuvre sans commandes supplĂ©mentaires pour contrĂŽler la frĂ©quence de rafraĂźchissement de la mĂ©moire et repose sur des schĂ©mas de frĂ©quence variable pour le rechargement des cellules. Pour rĂ©ussir une attaque Rowhammer dans ces conditions, un suivi prĂ©cis de milliers d'opĂ©rations de mise Ă jour des cellules est requis. Dans de telles conditions, les mĂ©thodes d'attaque Rowhammer existantes se sont rĂ©vĂ©lĂ©es inapplicables, et les chercheurs ont dĂ©veloppĂ©s une nouvelle mĂ©thode qui procĂšde Ă une auto-correction des modĂšles d'accĂšs lors de l'identification des opĂ©rations de mise Ă jour de mĂ©moire manquĂ©es pendant l'attaque.
La méthode s'est révélée efficace et, lors des tests, a permis d'obtenir une distorsion contrÎlée d'un bit de mémoire sur 15 puces DDR5 testées de la société SK Hynix (détenant 36 % du marché DRAM), produites de fin 2021 à fin 2024. Une distorsion d'un bit a suffi pour créer un exploit permettant d'obtenir un accÚs root dans le systÚme lors d'une attaque sur un systÚme avec un CPU AMD Ryzen 7 7700X et de la mémoire SK Hynix DDR5 pendant 109 secondes. Pour bloquer la méthode d'attaque proposée, il est recommandé d'augmenter la fréquence de rafraßchissement de la mémoire par trois.
Les méthodes d'exploitation permettant d'obtenir des droits root par la distorsion d'un bit comprennent les techniques suivantes : la modification du contenu des entrées de la table de pages mémoire (PTE, page table entry) pour obtenir les privilÚges du noyau ; l'endommagement de la clé publique RSA-2048 stockée en mémoire dans OpenSSH (permettant d'associer la clé publique à la clé privée de l'attaquant pour se connecter à la VM de la victime) ; contourner la vérification des autorisations en modifiant la mémoire du processus sudo. une machine virtuelle La méthode avec PTE s'est avérée fonctionnelle pour toutes les 15 puces testées, l'attaque via RSA a réussi pour 11 puces, et via sudo pour 5.

Dans l'exploitation pour la mise en place de tableaux de pages mémoire dans les cellules DRAM sélectionnées, la technique Rubicon est utilisée, révélée simultanément avec l'attaque Phoenix. Rubicon manipule les caractéristiques d'optimisation dans le systÚme de distribution de mémoire du noyau Linux et permet l'allocation de mémoire dans des zones avec une autre valeur de « migratetype », réservées pour des opérations privilégiées. Le problÚme a été confirmé dans les noyaux Linux allant de 5.4 à 6.8, mais théoriquement, la vulnérabilité couvre tous les noyaux avec le mécanisme d'allocation de mémoire Zoned Buddy Allocator.
En plus de simplifier la réalisation d'attaques de type Rowhammer, la technique Rubicon est également applicable pour améliorer l'efficacité des attaques microarchitecturales, comme Spectre, et simplifier la localisation en mémoire des données secrÚtes à extraire via des fuites par l'exécution spéculative d'instructions. Rubicon permet de se passer d'une longue étape de scan de la mémoire et de détermination de fichiers, tels que /etc/shadow. Au lieu de cela, on peut immédiatement commencer l'exploitation des vulnérabilités microarchitecturales, grùce à un placement prédéfini du fichier à une adresse physique connue. Par exemple, l'application de la méthode Rubicon a permis d'accélérer la fuite de données sur un systÚme avec un CPU Intel i7-8700K de 2698 à 9.5 secondes (284 fois), et sur un CPU AMD EPYC 7252, de 189 à 27.9 secondes (6.8 fois).

Pendant ce temps, un autre groupe de chercheurs de l'UniversitĂ© George Mason a dĂ©montrĂ© la possibilitĂ© d'attaques de type Rowhammer pour compromettre les systĂšmes d'IA. Les chercheurs ont proposĂ© la mĂ©thode OneFlip, permettant de modifier de maniĂšre ciblĂ©e le comportement des modĂšles d'IA par la distorsion d'un bit d'information en mĂ©moire. Un exemple de code est disponible pour injecter un changement de type cheval de Troie dans un rĂ©seau neuronal. Il est montrĂ© comment la modification d'un seul bit peut ĂȘtre utilisĂ©e pour fausser le fonctionnement du modĂšle de pilote automatique afin de changer l'interprĂ©tation du panneau routier « Stop » en un panneau « Limitation de vitesse ». L'utilisation de cette mĂ©thode pour contourner les systĂšmes de reconnaissance faciale a Ă©galement Ă©tĂ© examinĂ©e. Pour les modĂšles conservant des poids sous forme d'entiers de 32 bits, le succĂšs de l'attaque est Ă©valuĂ© Ă 99.9% sans impact sur les caractĂ©ristiques originales du modĂšle.

Source : opennet.ru
