Les coprocesseurs de sécurité embarqués — Intel ME (Management Engine) et AMD PSP (Platform Security Processor) — sont des systèmes informatiques autonomes intégrés dans chaque processeur moderne, fonctionnant indépendamment du CPU principal et du système d'exploitation. Ces coprocesseurs ont un accès complet et permanent à la mémoire RAM, au réseau (AMT pour Intel ME), et aux périphériques — même quand l'ordinateur est éteint (en standby). Conçus pour la gestion à distance (Intel AMT), le démarrage sécurisé et la gestion des clés DRM, ils représentent une surface d'attaque critique car ils sont invisibles au système d'exploitation et impossibles à auditer complètement (firmware propriétaire partiellement chiffré). Ce guide technique couvre l'architecture de ces coprocesseurs, les vulnérabilités découvertes, les techniques d'exploitation firmware, et les options de mitigation pour les organisations soucieuses de leur souveraineté numérique.

En bref

  • Intel ME : architecture MINIX, AMT, accès réseau et mémoire DMA, firmware exploitation
  • AMD PSP : architecture ARM TrustZone, fTPM, Secure Boot et vulnérabilités
  • Exploitation : JTAG access, SPI flash extraction, buffer overflows dans le firmware
  • Vulnérabilités critiques : CVE-2017-5705 (ME RCE), AMD fTPM attacks, SA-00086
  • Mitigations : HAP bit, me_cleaner, coreboot, et audit de firmware
Intel ME (Management Engine) — Coprocesseur autonome intégré dans le chipset Intel (PCH), exécutant un OS basé sur MINIX avec un accès complet à la mémoire RAM, au réseau et aux périphériques. Le ME fonctionne indépendamment du CPU principal et est actif même quand le système est éteint (en standby S5), tant que l'alimentation ATX est connectée.

Architecture Intel ME

Intel ME est un système informatique complet intégré dans le PCH (Platform Controller Hub) :

ComposantDétailImplication sécurité
CPUx86 (Quark) ou ARC (ancien), 32-bitExécute du code arbitraire si compromis
OSMINIX modifié (depuis ME 11+)Stack TCP/IP, filesystem, scheduler
MémoireAccès DMA à toute la RAM du systèmeLecture/écriture de la mémoire du CPU
RéseauAccès direct au NIC (AMT, port 16992)Backdoor réseau indétectable par l'OS
StockageSPI flash (firmware), ME storagePersistance au-delà du reformatage
FonctionsAMT, Boot Guard, PTT (fTPM), ICCChaque fonction étend la surface d'attaque

Intel AMT : Accès Réseau à Distance

Intel AMT (Active Management Technology) est la fonction la plus critique de ME : elle fournit un accès distant complet au système (KVM, redirection de console, power management) via le réseau, indépendamment de l'OS. AMT écoute sur le port 16992 (HTTP) et 16993 (HTTPS) et offre une interface web et SOAP pour le contrôle à distance. Un attaquant compromettant AMT obtient un accès indétectable et persistant au système.

La vulnérabilité CVE-2017-5689 (INTEL-SA-00075) est emblématique : un bug d'authentification dans AMT permettait le bypass complet de l'authentification en envoyant une réponse d'authentification vide (ou avec un hash tronqué). Tout système avec AMT activé et accessible sur le réseau était compromis — des millions de systèmes d'entreprise affectés.

AMD PSP : Platform Security Processor

Le AMD PSP est l'équivalent AMD de Intel ME : un coprocesseur ARM Cortex-A5 avec TrustZone intégré dans le die du CPU AMD. Le PSP gère le Secure Boot, le fTPM (firmware TPM), la gestion des clés mémoire (SME/SEV), et la validation de l'intégrité du firmware UEFI. Contrairement à Intel ME, le PSP n'a pas d'équivalent AMT (pas d'accès réseau direct), mais il a un accès DMA à la RAM.

Vulnérabilités Critiques Intel ME

  • INTEL-SA-00086 (CVE-2017-5705/5706/5707) : multiples buffer overflows dans le kernel ME permettant l'exécution de code arbitraire sur le coprocesseur ME. Affecte les ME versions 11.0 à 11.7. Exploitation via JTAG ou accès SPI flash.
  • CVE-2018-3655 (SA-00125) : faille dans le démarrage sécurisé de ME permettant l'exécution de firmware non signé sur le ME — persistance totale.
  • AMT silent provisioning : un administrateur réseau peut provisionner AMT sans le consentement de l'utilisateur, créant un accès distant sur des systèmes que l'utilisateur croit sécurisés.

me_cleaner et Mitigation

me_cleaner est un outil open-source qui supprime la majorité du firmware Intel ME de la SPI flash, ne conservant que les modules essentiels au démarrage du système. Sur la plupart des systèmes, ME peut être réduit de ~5 MB à ~90 KB sans affecter le fonctionnement. Le HAP bit (High Assurance Platform) — un bit découvert dans le firmware ME par les chercheurs de Positive Technologies — désactive ME après l'initialisation du hardware. Ce bit était apparemment utilisé par la NSA pour désactiver ME sur ses propres systèmes.

# me_cleaner — réduire le firmware Intel ME
# ATTENTION : opération risquée, peut bricker le système

# 1. Extraire le firmware SPI (via programmer SPI ou flashrom)
flashrom -p internal -r bios_dump.bin

# 2. Appliquer me_cleaner
python3 me_cleaner.py -S -O cleaned.bin bios_dump.bin
# -S : soft disable (HAP bit si supporté)

# 3. Re-flasher (risque de brick)
flashrom -p internal -w cleaned.bin

Coreboot et Firmware Open-Source

Coreboot est un firmware open-source qui remplace le BIOS/UEFI propriétaire. Combiné avec me_cleaner et un payload comme Heads (boot sécurisé vérifié par l'utilisateur), il offre la meilleure protection possible contre les implants firmware. Les laptops System76, Purism Librem et NovaCustom utilisent coreboot avec ME désactivé.

⚠️ Attention — La désactivation d'Intel ME via me_cleaner ou le HAP bit est une opération risquée qui peut bricker le système. De plus, certaines fonctionnalités dépendent de ME (gestion de la puissance, initialisation mémoire). Testez toujours sur du matériel non critique et maintenez un programmeur SPI externe pour la récupération.

À retenir

  • Intel ME est un OS complet (MINIX) avec accès DMA à la RAM et au réseau — actif même machine éteinte
  • AMT (port 16992) fournit un accès distant total au système, indépendant de l'OS — cible de choix
  • AMD PSP (ARM Cortex-A5) gère Secure Boot, fTPM et SEV — accès DMA sans accès réseau direct
  • me_cleaner + HAP bit réduisent la surface d'attaque ME de ~5 MB à ~90 KB de firmware
  • Coreboot + Heads est la solution la plus robuste pour un firmware auditable et ME minimal

FAQ — Questions Fréquentes

Peut-on complètement désactiver Intel ME ?

Non, Intel ME ne peut pas être complètement désactivé car il est nécessaire à l'initialisation du matériel (PCH initialization). Cependant, me_cleaner supprime tous les modules non essentiels, et le HAP bit désactive ME après l'initialisation hardware. Le résultat est un ME minimal qui ne peut plus exécuter de code arbitraire ni communiquer sur le réseau.

Intel ME est-il une backdoor de la NSA ?

La découverte du HAP bit (utilisé par la NSA pour désactiver ME sur ses systèmes) a alimenté les théories. Intel affirme que ME est conçu pour la gestion d'entreprise (AMT) et la sécurité (Boot Guard). Cependant, l'impossibilité d'auditer complètement le firmware propriétaire et l'accès privilégié de ME (DMA, réseau, persistance) rendent les préoccupations légitimes.

Comment vérifier si AMT est activé sur mon système ?

Sur Windows : netstat -an | findstr 16992 pour vérifier si le port AMT écoute. Sur Linux : ss -tlnp | grep 16992. Utilisez l'outil Intel MEInfo pour obtenir l'état complet de ME/AMT. Dans le BIOS, cherchez les options Intel AMT, ME, ou vPro pour les désactiver si non nécessaires.

Besoin d'un accompagnement expert ?

Nos consultants spécialisés en sécurité firmware et hardware vous accompagnent dans l'évaluation de votre posture de sécurité.

Contactez-nous
Article recommandé : Frida et DynamoRIO : Instrumentation Binaire Avancée

📚 Articles connexes

Ayi NEDJIMI

Besoin d'un expert cybersécurité ?

Audit, pentest, formation, IA — plus de 25 ans d'expérience, 100+ missions réalisées.

Intel ME et AMD PSP : vecteurs d'attaque firmware de nouvelle génération

La sophistication croissante des attaques firmware cible désormais les coprocesseurs de sécurité eux-mêmes. Ce qui était théorique il y a cinq ans est aujourd'hui documenté dans des attaques réelles contre des cibles gouvernementales et industrielles. Comprendre ces vecteurs est indispensable pour les équipes qui protègent des systèmes critiques.

Architecture interne d'Intel ME et AMD PSP

Intel ME (Management Engine) et AMD PSP (Platform Security Processor) sont des systèmes-sur-puce intégrés dans le PCH (Platform Controller Hub) d'Intel ou directement dans le SOC AMD. Leur architecture révèle pourquoi ils sont à la fois essentiels à la sécurité de la plateforme et une cible d'attaque de première importance :

  • Intel ME : processeur ARC (architecture RISC propriétaire Intel) avec 32 à 64 Mo de RAM dédiée, accès direct au bus mémoire via DMA, interface réseau dédiée (Intel AMT), stockage flash séparé. Le firmware ME est signé et chiffré, mais des vulnérabilités dans la chaîne de vérification ont permis des contournements (INTEL-SA-00086, 2017).
  • AMD PSP : processeur ARM Cortex-A5 intégré dans le die AMD, accès privilégié à la mémoire système, responsable du démarrage sécurisé (Secure Boot), de la gestion des clés et du chiffrement mémoire (SME/SEV). Des vulnérabilités comme Masterkey, Ryzenfall et Chimera (2018, CTS Labs) ont exposé des failles dans le PSP bien que la réalité de certaines ait été contestée.

Vecteurs d'exploitation firmware documentés

Les vecteurs d'exploitation des coprocesseurs de sécurité peuvent être classés en trois catégories selon leur accessibilité et leur sophistication :

Vecteurs d'exploitation locale (accès physique requis)

  • Flash SPI directe : connexion directe au flash SPI qui stocke le firmware ME/BIOS via un programmateur externe (Bus Pirate, FlashProg). Permet de lire, modifier ou effacer le firmware. Requiert un accès physique mais donne un contrôle total.
  • JTAG / debug port : les interfaces de débogage JTAG du ME/PSP permettent une inspection complète de l'état du processeur. Ces interfaces sont censées être désactivées en production mais des configurations incorrectes les laissent accessibles.
  • Evil maid via USB : des attaques documentées permettent d'exploiter le ME depuis un périphérique USB malveillant pendant la phase de démarrage, avant que l'OS ne soit chargé.

Vecteurs d'exploitation réseau (Intel AMT)

Intel AMT (Active Management Technology), composante d'Intel ME, est particulièrement exposée en raison de ses capacités réseau indépendantes de l'OS :

  • CVE-2017-5689 (Silent Bob is Silent) : une vulnérabilité critique dans Intel AMT permettait une authentification bypass complète via le protocole Digest. Un attaquant sur le réseau pouvait accéder à l'interface AMT sans credentials valides. Impact massif sur les systèmes enterprise.
  • AMT avec mot de passe par défaut : des déploiements enterprise où AMT n'a jamais été configuré utilisent les credentials par défaut (admin/admin). Ces systèmes sont exposés depuis leur réseau d'entreprise.

Mesures défensives contre les attaques firmware ME/PSP

La protection contre les attaques firmware requiert une approche en couches, car aucune mesure unique ne couvre l'ensemble des vecteurs :

  • Désactivation d'Intel AMT quand non utilisé : si vous n'utilisez pas Intel AMT pour la gestion à distance, désactivez-le dans le BIOS/UEFI. Réduisez la surface d'attaque réseau à zéro pour cette fonctionnalité. Vérifiez l'état AMT sur vos parcs via l'outil AMSDK ou le script de vérification Intel.
  • Mise à jour du firmware ME/PSP : les mises à jour du firmware ME sont incluses dans les mises à jour BIOS/UEFI publiées par les OEM. Un BIOS non mis à jour depuis 2017 peut encore être vulnérable à CVE-2017-5689. Intégrez les mises à jour firmware dans votre programme de gestion des vulnérabilités.
  • Secure Boot activé et configuré : Secure Boot vérifie la signature du bootloader et du kernel au démarrage, ce qui limite certains vecteurs d'attaque firmware. Assurez-vous que Secure Boot est activé et que les clés de confiance sont correctement configurées (pas en mode Setup, pas avec les clés Microsoft exclusivement si vous avez des exigences de sécurité élevées).
  • Protection physique des serveurs : les attaques flash SPI et JTAG requièrent un accès physique. La sécurité physique des serveurs (datacenter sécurisé, contrôle d'accès biométrique, vidéosurveillance) est une mesure essentielle contre ces vecteurs.
  • Monitoring du firmware : des solutions comme TPM + Measured Boot, BootGuard (Intel), ou Pluton (AMD/Microsoft) permettent de détecter les modifications non autorisées du firmware en comparant les mesures lors du démarrage avec des valeurs de référence connues.

Foire aux questions — Intel ME / AMD PSP et sécurité firmware

Est-il possible de désactiver complètement Intel ME ?

La désactivation complète d'Intel ME n'est pas officiellement supportée et peut empêcher le démarrage du système sur certaines plateformes. Le projet me_cleaner (open source) permet de réduire les fonctionnalités du ME au minimum strictement nécessaire au démarrage, éliminant AMT et d'autres composants potentiellement vulnérables. Cette approche est utilisée par des projets comme Purism (Librem) et Coreboot pour offrir des systèmes avec une empreinte ME minimale. Elle n'est pas recommandée sur des systèmes de production enterprise sans expertise firmware avancée.

Les hyperviseurs protègent-ils contre les attaques ME/PSP ?

Non. Les coprocesseurs ME/PSP opèrent à un niveau de privilège inférieur à l'hyperviseur — dans le modèle de hiérarchie des anneaux de protection, ME opère en Ring -3 (SMM/ME mode), sous le Ring -1 de l'hyperviseur. Un code malveillant dans le ME a accès à la mémoire physique complète, y compris à la mémoire des VMs de l'hyperviseur. La compromission du ME représente la compromission complète de la plateforme physique, indépendamment des couches logicielles supérieures.