TL;DR — En résumé
Attaques DMA via Thunderbolt, PCIe et FireWire : PCILeech, extraction BitLocker, contournement IOMMU, FPGA hardware implants.
Les attaques DMA (Direct Memory Access) exploitent les interfaces matérielles à haut débit — Thunderbolt, PCIe, FireWire et USB4 — pour lire et écrire directement dans la mémoire physique d'un système sans passer par le processeur ni le système d'exploitation. Ces attaques sont dévastatrices car elles contournent l'ensemble des protections logicielles : chiffrement de disque, authentification, EDR, et même le Secure Boot. Un attaquant avec un accès physique de quelques secondes peut extraire les clés de chiffrement, injecter du code en mémoire kernel, ou contourner l'écran de verrouillage. Ce guide technique détaille l'ensemble des vecteurs d'attaque DMA, les outils d'exploitation (PCILeech, Inception), les mécanismes de protection (IOMMU/VT-d, Thunderbolt Security Levels, Kernel DMA Protection) et les méthodologies de test pour les audits de sécurité matérielle.
\\nEn bref
- Vecteurs DMA : Thunderbolt 3/4, PCIe, FireWire IEEE 1394, USB4 et M.2/NVMe
- Outils : PCILeech, Inception, FPGA-based DMA platforms (Screamer, Squirrel)
- Attaques : extraction de clés BitLocker/FileVault, bypass écran de verrouillage, injection kernel
- Mitigations : IOMMU/VT-d, Thunderbolt Security Levels, Kernel DMA Protection, Secure Boot
- Méthodologie de test physique pour les audits de sécurité matérielle
Principes du DMA et Vecteurs d'Attaque
\\nLe DMA est un mécanisme fondamental de l'architecture PC : les périphériques (carte réseau, carte graphique, contrôleur de stockage) ont besoin de transférer de grandes quantités de données vers et depuis la RAM sans solliciter le CPU à chaque octet. Le contrôleur DMA permet ces transferts directs entre le périphérique et la mémoire physique. Le problème de sécurité est évident : un périphérique malveillant peut lire ou écrire n'importe quelle adresse de la mémoire physique, accédant aux données de tous les processus, du kernel et des structures de sécurité.
\\n| Interface | Débit | Accès DMA | Risque |
|---|---|---|---|
| Thunderbolt 3/4 | 40 Gbps | Oui (PCIe tunneling) | Critique |
| USB4 | 40-80 Gbps | Oui (PCIe tunneling) | Critique |
| FireWire (IEEE 1394) | 800 Mbps | Oui (natif) | Critique |
| ExpressCard | 5 Gbps (PCIe x1) | Oui (PCIe direct) | Critique |
| M.2/NVMe | 64 Gbps (PCIe 5.0 x4) | Oui (PCIe direct) | Nécessite ouverture |
| USB 3.x standard | 20 Gbps | Non (sauf USB4) | Faible |
PCILeech : L'Outil de Référence
\\nPCILeech est l'outil de référence pour l'exploitation DMA. Il supporte de multiples plateformes matérielles (FPGA, Thunderbolt, USB3380) et offre des fonctionnalités puissantes :
\\n# PCILeech — Exemples d'utilisation\\n\\n# 1. Dump de la mémoire physique complète\\npcileech dump -out memory.raw -min 0 -max 0x100000000\\n\\n# 2. Recherche de patterns en mémoire (clés de chiffrement)\\npcileech search -s "PRIVATE KEY" -min 0 -max 0x100000000\\n\\n# 3. Injection de shellcode en mémoire kernel\\npcileech kmdload -kmd LINUX_X64\\n\\n# 4. Bypass de l'écran de verrouillage Windows\\npcileech patch -sig wx64_intelptt_unlock\\n\\n# 5. Extraction de credentials (LSASS)\\npcileech lsass -out creds.txt\\nPlateformes FPGA pour Attaques DMA
\\nLes plateformes FPGA sont le standard pour les attaques DMA professionnelles. Elles émulent un périphérique PCIe légitime (carte réseau, contrôleur USB) et interceptent/injectent les transactions DMA :
\\n- \\n
- Screamer (PCIe) : carte PCIe basée sur Xilinx Artix-7. Se connecte via le slot PCIe x1/x4 et émule n'importe quel device ID. Compatible PCILeech avec des débits de lecture de 2+ GB/s. \\n
- Squirrel (M.2) : facteur de forme M.2 — se branche dans le slot M.2 d'un laptop. Discret et efficace pour les audits physiques. \\n
- USB3380-based : carte USB-to-PCIe bridge. Moins performante mais bon marché (~50€) et facilement disponible. \\n
- LambdaConcept PCIe Screamer : plateforme open-source avec firmware PCILeech. Inclut un sniffer PCIe pour l'analyse passive du trafic. \\n
Extraction de Clés BitLocker via DMA
\\nL'une des attaques DMA les plus impactantes cible BitLocker (chiffrement de disque Windows). Quand BitLocker utilise le TPM seul (sans PIN de pre-boot), la clé de chiffrement (FVEK — Full Volume Encryption Key) est déchiffrée au boot et stockée en mémoire RAM. Un attaquant DMA peut :
\\n- \\n
- Connecter un device DMA au système allumé (ou en veille S3) \\n
- Scanner la mémoire physique à la recherche du FVEK pattern \\n
- Extraire la clé — le disque peut être déchiffré hors-ligne \\n
Attaques FireWire Historiques
\\nFireWire (IEEE 1394) est l'ancêtre des attaques DMA — le protocole accorde par conception un accès DMA complet à tout périphérique connecté, sans aucune authentification. L'outil Inception automatise les attaques FireWire :
\\n# Inception — bypass de l'écran de verrouillage via FireWire\\ninception --target win10 # Patch la mémoire pour bypass le login\\ninception --target osx # Même chose sur macOS\\ninception --target linux # Et Linux\\n\\n# Inception modifie la routine d'authentification en mémoire\\n# pour qu'elle accepte n'importe quel mot de passe\\nIOMMU/VT-d : La Mitigation Principale
\\nL'IOMMU crée des tables de traduction d'adresses pour les périphériques DMA, similaires aux tables de pages du MMU pour les processus. Chaque périphérique ne peut accéder qu'aux régions de mémoire physique qui lui sont explicitement assignées. Intel VT-d et AMD AMD-Vi implémentent l'IOMMU au niveau matériel.
\\n- \\n
- Thunderbolt Security Levels : None (SL0, DMA libre), User (SL1, confirmation), Secure (SL2, confirmation + UUID), USB-only (SL3, pas de PCIe tunneling) \\n
- Kernel DMA Protection (Windows 10+) : active l'IOMMU avant le chargement des drivers Thunderbolt, bloquant le DMA pré-boot \\n
- DMAR ACPI table : décrit les mappings IOMMU au BIOS/UEFI. Certains BIOS ne configurent pas correctement l'IOMMU, laissant des fenêtres d'attaque \\n
dmesg | grep -i iommu sur Linux, ou msinfo32 → Kernel DMA Protection sur Windows. Testez avec un device PCILeech USB3380 (~50€) avant d'investir dans une plateforme FPGA.À retenir
- Les attaques DMA permettent la lecture/écriture de TOUTE la mémoire physique via Thunderbolt, PCIe ou FireWire
- PCILeech + FPGA (Screamer/Squirrel) est le standard pour les audits DMA professionnels
- BitLocker sans PIN de pre-boot est vulnérable — la FVEK est en RAM et extractible par DMA
- L'IOMMU (VT-d/AMD-Vi) est la mitigation principale mais n'est pas toujours activé par défaut
- Thunderbolt 4 impose Security Level 2 minimum mais des contournements via ATS existent
FAQ — Questions Fréquentes
\\nLes MacBooks sont-ils vulnérables aux attaques DMA ?
Les MacBooks avec Apple Silicon (M1+) ne sont pas vulnérables aux attaques DMA classiques car Apple implémente un IOMMU strict (DART — Device Address Resolution Table) qui isole chaque périphérique. Les MacBooks Intel avec Thunderbolt 3 étaient vulnérables avant macOS Catalina 10.15.4 qui a activé l'IOMMU par défaut. Les MacBooks avec puce T2 ajoutent une couche de protection supplémentaire.
Comment se protéger contre les attaques DMA ?
Activez l'IOMMU dans le BIOS (VT-d/AMD-Vi), configurez Thunderbolt en Security Level 2 ou 3, utilisez un PIN de pre-boot avec BitLocker (pas TPM seul), désactivez FireWire si non utilisé, et activez Kernel DMA Protection sur Windows 10+. Pour les environnements les plus sensibles, désactivez physiquement les ports Thunderbolt ou utilisez des bloqueurs de port physiques.
PCILeech fonctionne-t-il à distance ?
Non, PCILeech nécessite un accès physique pour connecter le device DMA. Cependant, une fois le shellcode injecté en mémoire kernel, l'attaquant peut établir un accès distant persistant. Certains scénarios d'attaque combinent l'accès physique bref (evil maid) avec un implant réseau pour un accès continu.
Besoin d'un accompagnement expert ?
Nos consultants spécialisés en sécurité matérielle et audits physiques vous accompagnent dans l'évaluation de votre posture de sécurité.
Contactez-nous? Articles connexes
? Références externes
Détection forensique des attaques DMA et traces en mémoire
\nLa détection forensique d'une attaque DMA passée est particulièrement ardue car les accès mémoire directs ne génèrent pas de logs système standard. Les indices à rechercher lors d'une investigation post-incident incluent : les entrées de journal PCIe anormales dans les logs UEFI/BIOS (certains firmwares modernes journalisent les accès DMA inhabituels), les artefacts dans la mémoire de dump révélant des modifications de structures noyau cohérentes avec une attaque par rootkit DMA, et les journaux des contrôleurs Thunderbolt indiquant des connexions de périphériques non approuvés.
\nL'outil PCILeech lui-même génère des signatures détectables par certains EDR : les accès mémoire en mode DMA depuis un périphérique non-hôte correspondent à des patterns d'accès anormaux que des solutions comme Intel Transparent Supply Chain ou les modules IOMMU monitoring de certains hyperviseurs peuvent détecter en temps réel. Pour les organisations à haute sensibilité (défense, finance, infrastructure critique), l'implémentation d'un monitoring IOMMU actif — qui journalise toutes les tentatives d'accès DMA hors des plages allouées — est une mesure de défense en profondeur efficace contre les attaques Thunderbolt physiques.
\nLes contre-mesures physiques contre les attaques DMA représentent la première ligne de défense pour les environnements à haute sécurité. Le verrouillage des ports Thunderbolt via BIOS/UEFI est la mesure la plus simple et la plus efficace — la plupart des BIOS enterprise permettent de désactiver complètement les ports Thunderbolt ou de les limiter au mode "USB seulement" (sans DMA). Pour les environnements où Thunderbolt est nécessaire pour les docks et périphériques légitimes, l'activation du mode "Thunderbolt Security Level: User Authorization" exige une approbation explicite de l'utilisateur pour chaque nouveau périphérique Thunderbolt, avec persistance de l'autorisation stockée dans un TPM.
Les protections logicielles complémentaires incluent l'activation de la protection noyau Windows (Kernel DMA Protection, disponible depuis Windows 10 version 1803 sur hardware compatible) qui utilise l'IOMMU pour isoler les périphériques Thunderbolt dans des espaces d'adressage dédiés. Sur Linux, les paramètres `iommu=force` et `intel_iommu=on` dans GRUB activent la protection IOMMU. Ces mesures n'éliminent pas tous les vecteurs DMA (bus PCIe interne reste potentiellement vulnérable sur les machines accessibles physiquement) mais augmentent significativement le coût et la complexité des attaques.

Testez vos défenses avant les attaquants
\\nPentest, Red Team, audit de sécurité — rapport détaillé avec plan de remédiation priorisé.
\\n\\nTélécharger cet article en PDF
Format A4 optimisé pour l'impression et la lecture hors ligne
À propos de l'auteur
Ayi NEDJIMI
Auditeur Senior Cybersécurité & Consultant IA
Expert Judiciaire — Cour d'Appel de Paris
Habilitation Confidentiel Défense
[email protected]
Ayi NEDJIMI est un vétéran de la cybersécurité avec plus de 25 ans d'expérience sur des missions critiques. Ancien développeur Microsoft à Redmond sur le module GINA (Windows NT4) et co-auteur de la version française du guide de sécurité Windows NT4 pour la NSA.
À la tête d'Ayi NEDJIMI Consultants, il réalise des audits Lead Auditor ISO 42001 et ISO 27001, des pentests d'infrastructures critiques, du forensics et des missions de conformité NIS2 / AI Act.
Conférencier international (Europe & US), il a formé plus de 10 000 professionnels.
Domaines d'expertise
Ressources & Outils de l'auteur
Articles connexes
Désérialisation Insécure : Exploitation, Gadget Chains et Défense
La désérialisation insécure figure parmi les vulnérabilités les plus critiques du Top 10 OWASP, capable de mener à l'exécution de code arbitraire (RCE) sur des serveurs d'entreprise. Cet article détaille les mécanismes d'exploitation en Java, PHP et Python, les gadget chains, les CVE emblématiques et les stratégies de défense applicables en 2026.
Race Condition Web 2026 : Exploitation avec Burp Turbo Intruder
Les race conditions web représentent une classe de vulnérabilités souvent sous-estimée mais pouvant permettre le double dépensement de crédits, le contournement de la 2FA ou l'escalade de privilèges. Cet article détaille les techniques d'exploitation modernes avec Burp Suite Turbo Intruder, la Single-Packet Attack de James Kettle, et les patterns de correction robustes pour 2026.
Contournement EDR 2026 : Techniques Red Team et Contre-Mesures
Les EDR modernes représentent la dernière ligne de défense endpoint en 2026. Cet article explore, dans un contexte red team légal et contractuel, les techniques utilisées pour tester leur efficacité réelle : obfuscation de shellcode, process injection, bypass AMSI, direct syscalls — et les contre-mesures pour les défenseurs.
Votre Active Directory est-il vulnérable ?
Nos experts OSCP identifient les chemins d'attaque réels avant les vrais attaquants. Pentest AD, red team, test d'intrusion interne/externe.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire