
Table des Matières
Dans le paysage évolutif de la cybersécurité, les menaces ont infiltré des niveaux bien plus profonds que les simples exploits logiciels. Les portes dérobées matérielles sont insidieuses et dévastatrices, permettant aux attaquants de compromettre les fondations mêmes de la confiance dans les systèmes numériques. Contrairement aux malwares logiciels, les portes dérobées matérielles sont presque indétectables avec les outils antivirus traditionnels — elles peuvent résider silencieusement dans les CPU, chipsets ou contrôleurs périphériques, prêtes à s'activer sur commande ou sous certaines conditions.
Alors que nous nous appuyons de plus en plus sur des chaînes d'approvisionnement complexes et du matériel tiers, comprendre et réduire au silence les portes dérobées matérielles n'a jamais été aussi crucial pour les entreprises, chercheurs et même amateurs construisant du matériel ouvert. Dans cet article complet, nous expliquerons ce que sont les portes dérobées matérielles, explorerons des cas du monde réel, présenterons des techniques de détection et fournirons des exemples de code et des méthodologies à destination des praticiens de la sécurité à tout niveau.
Une porte dérobée matérielle est une fonctionnalité cachée intentionnellement intégrée dans un appareil physique, généralement au niveau du circuit intégré ou du composant, pour altérer son comportement ou fournir un accès secret aux ressources du système.
Caractéristiques clés :
Selon Wikipedia :
"Elles sont difficiles à détecter et impossibles à supprimer à l'aide de méthodes conventionnelles comme le logiciel antivirus. Elles peuvent également contourner d'autres mesures de sécurité..."
Les portes dérobées matérielles possèdent des propriétés uniques qui les rendent difficiles à identifier :
"Un aspect clé des portes dérobées matérielles qui les rend si difficiles à détecter lors de la validation est qu'elles peuvent rester dormantes durant les tests (aléatoires ou dirigés)..."
Les portes dérobées matérielles peuvent prendre plusieurs formes :
Des documents fuités ont révélé la capacité de la NSA à implanter des matériels espions dans des routeurs, serveurs et ordinateurs en transit.
Un rapport controversé prétendait que la Chine a implanté des puces sur les cartes mères Supermicro destinées aux entreprises américaines, permettant prétendument un accès à distance. Bien que très débattu, l'histoire a sensibilisé aux vulnérabilités de la chaîne d'approvisionnement.
De nombreux appareils grand public expédiés conservent des ports JTAG ou UART ouverts, exposant les systèmes à un contrôle de bas niveau contournant toutes les protections OS/firmware.
Les cartes utilisant les SoC AllWinner ont été trouvées avec des comptes de débogage et des portes dérobées dans le firmware, comme souligné sur Security StackExchange.
Le générateur de nombres aléatoires (RNG) cryptographique par défaut du NIST a été montré comme ayant une sortie prévisible étant donné des paramètres secrets, que l'on pense avoir été insérée comme porte dérobée à la demande de la NSA.
Celles-ci reposent sur l'accès interne aux fichiers de conception de CI, permettant une vérification au niveau source, souvent utilisées pour le silicium open-source :
Utilisées quand seule la puce finie est disponible ; impliquent des sondages, analyse de canaux parallèles et comportement d'E/S :
Des cadres de preuve mathématiques (par exemple, Coq, ACL2) peuvent être utilisés, bien que trop lents et complexes pour les grandes puces.
Les techniques d'Analyse de Puissance Différentielle (DPA) ou d'analyse électromagnétique peuvent révéler des circuits matériels qui ne fonctionnent que dans des conditions spécifiques.
Scannez les interfaces série et de débogage ouvertes :
dmesg | grep tty
ls /dev/ | grep tty
Recherchez dans /etc/passwd ou les images de firmware des comptes non documentés :
grep -iE '(root|debug|test|admin)' /etc/passwd
lsusb et lspci pour Auditer les PériphériquesListez le matériel connecté et cherchez des appareils inconnus :
lsusb
lspci
lspci pour Noms de Vendeursimport subprocess
output = subprocess.getoutput("lspci")
for line in output.split('\n'):
if "Unknown" in line or "Allwinner" in line: # mots-clés suspects
print("Matériel possiblement suspect :", line)
Décompressez et grepez les chaînes suspectes :
binwalk -e firmware.img
grep -r 'debug' _firmware.img.extracted/
Installez ChipWhisperer et sondez les anomalies dans les opérations cryptographiques. Par exemple, l'analyse de puissance différentielle peut inférer la présence de logique matérielle.
Comparez les dumps BIOS entre cartes mères identiques :
flashrom -p internal -r dump1.bin
# Sur un autre appareil
flashrom -p internal -r dump2.bin
cmp dump1.bin dump2.bin
Pour ceux ayant accès aux sources HDL et à la netlist fabriquée, utilisez un outil de vérification d'équivalence (tel que Synopsys Formality ou open-source yosys) :
yosys -p "read_verilog rtl.v; read_verilog netlist.v; equiv_make rtl netlist equiv; equiv_simple equiv; equiv_status equiv"
Les sorties soulignant des différences peuvent indiquer des circuits de portes dérobées cachés.
Attachez des sondes et enregistrez les signaux EM pendant le fonctionnement de la puce, puis analysez les activités inconnues ou les traces de puissance inhabituelles, surtout lorsque le système est inactif.
Décapsulez les puces en utilisant des bains d'acide ou des techniques d'imagerie, puis utilisez la MEB (Microscopie Électronique à Balayage) pour comparer visuellement les mises en page de masque avec celles publiées. Ceci est coûteux en ressources et généralement effectué uniquement dans des laboratoires spécialisés.
Réduire au silence une porte dérobée matérielle signifie essentiellement la neutraliser, la désactiver ou autrement la rendre inefficace. Les stratégies clés incluent :
Approvisionner le Matériel auprès de Vendeurs de Confiance : Prioriser les fabricants avec une sécurité de la chaîne d'approvisionnement documentée.
Exiger du Matériel/Conceptions Ouverts Quand Possible : Les projets open-source, comme RISC-V, permettent plus de scruté.
Utiliser des Puces d'Élément Sécurisé : Pour la cryptographie et l'authentification critiques.
Déployer des Méthodes d'Attestation du Matériel : Utiliser TPM, Intel TXT ou ARM TrustZone pour une assurance à distance.
Segmenter l'Infrastructure Critique : Isoler physiquement ou mettre en pare-feu le matériel de provenance incertaine.
Audits Réguliers de Firmware & BIOS : Vérifier périodiquement le firmware contre les images de référence.
Collaboration Communautaire : Partager les découvertes suspectes avec la communauté de la sécurité pour un examen plus approfondi.
Les portes dérobées matérielles représentent l'une des menaces les plus sérieuses et difficiles dans le paysage moderne de la cybersécurité. Leur discrétion, leur persistance et leur potentiel de compromis généralisé en font un adversaire pour lequel aucune solution de détection ou d'atténuation unique ne suffit. À travers une inspection vigilante des appareils, une défense en couches et une stratégie rigoureuse de la chaîne d'approvisionnement, les organisations peuvent réduire — bien que jamais entièrement éliminer — le risque de portes dérobées matérielles.
Les praticiens de la sécurité doivent développer des compétences en analyse logicielle et matérielle, en exploitant tout, des simples outils en ligne de commande aux analyses avancées de canaux parallèles et à la vérification formelle.
Les travaux futurs dans la communauté, incluant de meilleurs outils d'analyse open-source et des normes de sécurité des chaînes d'approvisionnement matérielles améliorées, contribueront davantage à "réduire au silence" la menace des portes dérobées matérielles.
Cet article est sous licence CC BY 4.0. Les extraits de code sont fournis à des fins éducatives uniquement. Toujours se conformer aux lois applicables lors de l'examen ou du test de matériel.
Si vous avez trouvé ce contenu utile, imaginez ce que vous pourriez accomplir avec notre programme de formation élite complet de 47 semaines. Rejoignez plus de 1 200 étudiants qui ont transformé leur carrière grâce aux techniques de l'Unité 8200.