Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
MicrocodeDecryptor — Déchiffre les mises à jour de microcode Intel Atom et dépaquette XuCode à l'aide de clés RC4 récupérées, révélant les structures internes du microcode CPU pour la recherche en sécurité matérielle. | Kitploit
Outils/GitHubGitHub/chip-red-pill/microcodedecryptor
Rétro-ingénierieCryptographieSécurité MatérielleAnalyse de BinairesAnalyse de Micrologiciel
GitHubchip-red-pill/microcodedecryptor

MicrocodeDecryptor

Déchiffre les mises à jour de microcode Intel Atom et dépaquette XuCode à l'aide de clés RC4 récupérées, révélant les structures internes du microcode CPU pour la recherche en sécurité matérielle.

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
1.5k114il y a 4 ansVérifié par Kitploit

Avertissement

Toutes les informations sont fournies à des fins éducatives uniquement. Suivez ces instructions à vos propres risques. Ni les auteurs ni leur employeur ne sont responsables des dommages directs ou indirects ou des pertes résultant de toute personne ou organisation agissant ou s'abstenant d'agir sur la base des informations contenues dans cette page.

Description

Au début de l'année 2020, nous avons découvert la technique Red Unlock qui permet d'extraire le microcode Intel Atom. Nous avons pu étudier la structure interne du microcode et l'implémentation des instructions x86. Nous avons également retrouvé le format des mises à jour de microcode, l'algorithme et la clé de chiffrement utilisés pour protéger le microcode (voir RC4).

FAQ

  1. Puis-je créer une mise à jour de microcode personnalisée ?

Non, vous ne le pouvez pas. Seul le déchiffrement est pris en charge, car le microcode possède une signature RSA pour la protection de l'intégrité.

  1. Quels types de processeurs sont pris en charge ?

La clé de déchiffrement d'une mise à jour de microcode dépend de la génération du processeur. Nous avons extrait les clés pour les générations Intel Gemini Lake (microarchitecture Goldmont Plus) et Intel Apolo Lake (microarchitecture Goldmont). Voir Liste des processeurs pris en charge

  1. Comment avez-vous extrait les clés ?

En exploitant des vulnérabilités dans Intel TXE, nous avons activé un mode de débogage non documenté appelé red unlock et extrait des dumps du microcode directement depuis le processeur. Nous y avons trouvé les clés et l'algorithme.

  1. Où puis-je trouver plus d'informations à ce sujet ?

Voir nos présentations Chip Red Pill : Comment nous avons réussi à exécuter du microcode arbitraire dans les processeurs Intel Atom de l'OffensiveCon22.

Python

Tous nos scripts sont écrits en Python. Nous recommandons d'utiliser Python 3. Les scripts nécessitent le paquet pycryptodome. Pour installer pycryptodome, exécutez la commande suivante :

root@kitploit:~
pip3 install pycryptodome

Déchiffrement des mises à jour de microcode

Exécutez le script dec_uUpd_Atom_apl.py pour les processeurs Apolo Lake :

root@kitploit:~
C:\microcode>py -3 dec_uUpd_Atom_apl.py cpu506C9_plat03_ver00000040_2020-02-27_PRD_2FC3D618_.bin
Hash matched at length 0x3E00 (15872)
Data entropy: 6.898306

Exécutez le script dec_uUpd_xu_Atom_glp.py pour les processeurs Gemini Lake :

root@kitploit:~
C:\microcode>py -3 dec_uUpd_xu_Atom_glp.py cpu706A8_plat01_ver00000018_2020-06-09_PRD_1D9A5DFE.bin
Patch hash matched: enc size: 0x3480
Patch data entropy: 6.438890
XuCode hash matched: size: 0xed40
XuCode data entropy: 7.752765

Dépaquetage du XuCode déchiffré (Goldmont Plus uniquement)

Exécutez le script XuUnp.py pour les processeurs Goldmont Plus :

root@kitploit:~
C:\microcode>py -3 XuUnp.py cpu706A8_plat01_ver00000018_2020-06-09_PRD_1D9A5DFE.bin.xu.dec
Processing cpu706A8_plat01_ver00000018_2020-06-09_PRD_1D9A5DFE.bin.xu.dec
. ELF at 0x28
. Parking: 0xD58+944
. XuRT: 0x16EC+D404
. Decompressing 54276 -> 101448, be patient...
+ Unpacked OK

capture d'écran

À propos de XuCode

XuCode est la partie logicielle de la technologie SGX ; des fichiers ELF sont intégrés dans la mise à jour de microcode. capture d'écran

Voir : XuCode : une technologie innovante pour l'implémentation de flux d'instructions complexes

Liste des processeurs pris en charge

La mise à jour de microcode peut être déchiffrée pour les processeurs suivants :

Équipe de recherche

Mark Ermolov (@_markel___)

Maxim Goryachy (@h0t_max)

Dmitry Sklyarov (@_Dmit)

Télécharger l’outil
Modèle de processeurMicroarchitecturePrise en charge SGX / XuCode
Pentium J4205Goldmont, Apollo Lake-
Celeron J3455Goldmont, Apollo Lake-
Celeron J3355Goldmont, Apollo Lake-
Pentium N4200Goldmont, Apollo Lake-
Celeron N3450Goldmont, Apollo Lake-
Celeron N3350Goldmont, Apollo Lake-
Atom x7 E3940Goldmont, Apollo Lake-
Atom x5 E3930Goldmont, Apollo Lake-
Atom x7 A3960Goldmont, Apollo Lake-
Atom x7 A3950Goldmont, Apollo Lake-
Atom x5 A3940Goldmont, Apollo Lake-
Atom x5 A3930Goldmont, Apollo Lake-
Atom C3958Goldmont, Denverton-
Atom C3955Goldmont, Denverton-
Atom C3858Goldmont, Denverton-
Atom C3850Goldmont, Denverton-
Atom C3830Goldmont, Denverton-
Atom C3808Goldmont, Denverton-
Atom C3758Goldmont, Denverton-
Atom C3750Goldmont, Denverton-
Atom C3708Goldmont, Denverton-
Atom C3558Goldmont, Denverton-
Atom C3538Goldmont, Denverton-
Atom C3508Goldmont, Denverton-
Atom C3338Goldmont, Denverton-
Atom C3308Goldmont, Denverton-
Pentium Silver J5005Goldmont Plus, Gemini Lake+
Celeron J4105Goldmont Plus, Gemini Lake+
Celeron J4005Goldmont Plus, Gemini Lake+
Pentium Silver N5000Goldmont Plus, Gemini Lake+
Celeron N4100Goldmont Plus, Gemini Lake+
Celeron N4000Goldmont Plus, Gemini Lake+
Pentium Silver N5030Goldmont Plus, Gemini Lake Refresh+
Celeron N4120Goldmont Plus, Gemini Lake Refresh+
Celeron N4020Goldmont Plus, Gemini Lake Refresh+