đ Contexte
PubliĂ© le 24 octobre 2026 sur GitHub (blasty/wake-and-break), cet article est la documentation technique d’un exploit ciblant le Platform Security Processor (PSP) des cartes graphiques AMD de la sĂ©rie Navi31 (RX 7900).
âïž MĂ©canisme technique
L’exploit, baptisĂ© Wake and Break, neutralise la vĂ©rification de signature firmware du PSP AMD en modifiant la mĂ©moire PSP Ă la volĂ©e lors d’un warm boot de la carte. Il ne flashe rien de maniĂšre permanente : un cold power cycle (coupure d’alimentation) restaure l’Ă©tat d’origine.
Le processus repose sur :
- Le chargement de deux applications de confiance AMD (trusted applications) déjà présentes
- L’exploitation d’une chaĂźne permettant l’Ă©criture en mĂ©moire PSP
- L’injection d’un patch (quelques centaines d’octets d’assembleur ARM) dans la copie rĂ©sidente du bootloader
- Un warm boot de la carte qui démarre avec le patch actif
Une fois actif, la carte accepte du firmware non signé pour les composants : SMU, SDMA, MEC, IMU, RLC.
đ ïž Outils fournis
wakebreak.py: script principal (~600 lignes commentĂ©es)identify.py: identification du profil firmware de la carteipfw_images.py: gĂ©nĂ©ration de paires firmware signĂ©/altĂ©rĂ© pour testselftest.py: vĂ©rifications hors lignehook/: sources ARM et blobs compilĂ©s du patchfirmware/: images firmware AMD stock nĂ©cessaires Ă l’exploit
đŻ MatĂ©riel ciblĂ©
- Confirmé : RX 7900 XTX (profils a et c)
- Non testé sur hardware : profils b et d
- Potentiellement adaptable Ă d’autres familles de produits AMD adjacentes
- Nécessite un hÎte Linux avec accÚs à la carte via le driver AMD de tinygrad (PCIe ou pont USB)
â ïž Risques opĂ©rationnels
Si la carte est connectĂ©e nativement (PCIe), un Ă©chec du PSP pendant le warm boot peut bloquer l’hĂŽte entier (pas de log kernel, pas de MCE, nĂ©cessite un power cycle via BMC). DerriĂšre un pont USB, seule la carte est affectĂ©e.
đ Type d’article
Il s’agit d’une publication de recherche / proof-of-concept documentant une vulnĂ©rabilitĂ© de sĂ©curitĂ© matĂ©rielle avec code d’exploitation fonctionnel, visant Ă dĂ©montrer la possibilitĂ© de contourner les contrĂŽles d’intĂ©gritĂ© firmware sur les GPU AMD Navi31.
đ§ TTPs et IOCs dĂ©tectĂ©s
TTP
- T1542 â Pre-OS Boot (Defense Evasion)
- T1601 â Modify System Image (Defense Evasion)
- T1601.001 â Patch System Image (Defense Evasion)
IOC
- Fichiers :
wakebreak.py - Fichiers :
identify.py - Fichiers :
ipfw_images.py - Fichiers :
selftest.py - Chemins :
/tmp/fw_25_ok.bin - Chemins :
/tmp/fw_25_bad.bin
â ïž Ă propos de ces IOC â ils sont extraits automatiquement de l’article original le 27 octobre 2026 et n’ont pas fait l’objet d’une vĂ©rification externe. Un indicateur peut avoir Ă©tĂ© rĂ©attribuĂ© depuis : une IP de C2 peut redevenir un service lĂ©gitime, un domaine sinkholĂ© peut changer de propriĂ©taire. Aucune garantie d’exactitude ni d’actualitĂ© â contrĂŽlez leur validitĂ© avant tout usage opĂ©rationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.
Malware / Outils
- Wake and Break (wakebreak.py) (tool)
đĄ Indice de vĂ©rification factuelle : 40/100 (moyenne)
- ⏠github.com â source non rĂ©fĂ©rencĂ©e (0pts)
- â 4977 chars â texte complet (fulltext extrait) (15pts)
- â 6 IOCs (IPs/domaines/CVEs) (10pts)
- ⏠pas d’IOC vĂ©rifiĂ© (0pts)
- â 3 TTPs MITRE identifiĂ©es (15pts)
- ⏠date RSS ou approximée (0pts)
- ⏠aucun acteur de menace nommé (0pts)
- ⏠pas de CVE à vérifier (0pts)
đ Source originale : https://github.com/blasty/wake-and-break