RSE

Les coulisses d’un test d’intrusion matériel : Exploitation, démontrer l’impact des vulnérabilités

Hardsploit NG : La nouvelle carte d'audit matériel

Billet de blog 2     #4

Après avoir passé du temps à scruter le matériel, démonter la boîte noire et analyser ses secrets, nous arrivons à une étape déterminante : l’attaque proprement dite par l’exploitation des vulnérabilités découvertes. C’est ici que la théorie laisse place à la pratique, et où notre travail prend tout son sens en démontrant concrètement que les failles identifiées ne sont pas que des concepts abstraits, mais des portes entrouvertes pour un attaquant malveillant.

Dans cette phase, l’objectif est clair : exploiter une ou plusieurs vulnérabilités pour obtenir un accès non autorisé, extraire des données sensibles (clés de chiffrement, secrets), modifier le comportement de l’appareil, voire y établir une présence permanente. C’est la preuve par l’exemple, celle qui sert à convaincre les fabricants de la gravité des failles, et qui fait toute la valeur d’un test d’intrusion matériel.

Explorons maintenant quelques armes disponibles dans notre arsenal offensif et quelques chemins d’attaques parmi les plus classiques qui nous aideront à concrétiser ces exploitations.</br>

 

 

Exploiter les interfaces de débogage : quand un oubli coûte cher

Commençons par une  des failles les plus classiques, mais aussi des plus redoutables : l’attaque sur les interfaces de debug. Cette attaque est liée aux interfaces de débogage telles que JTAG, SWD ou UART. Ces interfaces, utilisées en phase de développement pour contrôler et tester les composants. Les fabricants ont souvent la fâcheuse tendance à les laisser actives en production. Un oubli coûteux, car elles offrent la plupart du temps un contrôle quasi-total sur le matériel.

Si elles ne sont pas désactivées ou protégées, ces interfaces permettent une lecture et écriture directe en mémoire, le contournement des mécanismes de démarrage sécurisé, et même l’exécution de code arbitraire. En clair, elles ouvrent une autoroute vers le cœur de l’appareil, facilitant grandement la démonstration ou la recherche d’une intrusion.

 

Firmware : extraire, patcher, reflasher, avec risques et précautions

Une autre méthode très employée est l’extraction du firmware, avec pour objectif en analyser le contenu, comprendre le fonctionnement global du dispositif, et identifier les failles logicielles. Une fois la ou les vulnérabilités qui permettent d’accéder au firmware trouvées (comme une vérification de mot de passe facilement cassable) il devient possible de l’extraire pour l’étudier et si possible le modifier.

Le firmware ainsi modifié peut être reflashé sur la puce pour valider la faisabilité technique de l’attaque. Toutefois, cette opération est délicate et risquée, une mauvaise manipulation peut « bricker » l’appareil, le rendant inutilisable définitivement ce qui mènerai donc potentiellement la perte des données.

 

Exploitation des vulnérabilités logicielles : débordements et injections

Au-delà du matériel, beaucoup d’attaques s’appuient sur des vulnérabilités logicielles classiques. Parmi les plus répandues, les failles de débordement de mémoire tampon (buffer overflow) permettent à un attaquant d’envoyer des données mal formées via des interfaces « légitimes » telles que le réseau, l’USB ou l’UART.

Ces failles exploitent un défaut de contrôle dans la gestion des tailles ou des formats des données. En écrivant au-delà de la mémoire allouée, l’attaquant corrompt des zones critiques du logiciel pour injecter et exécuter du code malveillant. Ces attaques sont redoutables, car elles combinent complexité logicielle et vecteurs d’accès standard.

 

Attaques par canal auxiliaire : écouter sans toucher

Parfois acceder physiquement à la cible n’est ni possible ni souhaitable. il est donc utile de disposer de techniques qui ne necessite pas d’alteration physique. Les attaques par canaux auxiliaires (Side-Channel Attacks – SCA) offrent cela. Elle reposent sur l’analyse des « fuites » physiques naturelles du matériel pendant son fonctionnement.

Par exemple, l’analyse de la consommation électrique pendant des opérations cryptographiques peut révéler des informations sur les clés utilisées. De même, des variations temporelles observées dans l’exécution des instructions peuvent être exploitées pour déduire des secrets internes.

L’analyse électromagnétique (EM) consiste à mesurer les émissions électromagnétiques des transistors qui commutent entre 0 et 1. Ces émissions, bien qu’infimes, peuvent être captées pour reconstruire le traitement de données confidentielles. Ces techniques d’écoute attentive mettent en péril la confidentialité des systèmes même les plus protégés.

 

Injection de fautes : provoquer les erreurs pour tromper le système

Pour contourner certains mécanismes de vérification, les attaques par injection de fautes (Fault Injection – FI) créent volontairement des perturbations physiques impactant ainsi le comportement des composants électroniques et même l’exécution du code. Si notre cible est vulnérable à ce type d’attaque, on peut notamment utiliser :

  • Le glitch de tension ou d’horloge qui perturbe temporairement l’alimentation électrique ou la fréquence d’horloge du composant, faisant sauter des étapes critiques comme une vérification de mot de passe.
  • L’injection électromagnétique (EMFI) qui envoie une impulsion électromagnétique ciblée, induisant des courants parasites qui déstabilisent les circuits internes.
  • L’injection par laser, qui tout en étant plus précise, nécessite parfois un traitement physique du composant étudié pour exposer efficacement les zones qu’on souhaite cibler avec un faisceau laser.

Ces attaques sont souvent complexes, mais redoutablement efficaces contre certaines protections logicielles et matérielles. Elles peuvent par exemple permettre de réaliser des élévations de privilèges en perturbant l’exécution du code qui contrôle ces privilèges.

 

La réalité du terrain

Dans la « vraie vie » beaucoup de fabricants font des efforts pour ne pas laisser leur produits sans défenses contre les attaquants malveillants. Les interfaces de débogage sont souvent verrouillées ou désactivées. Le démarrage sécurisé (Secure Boot), le chiffrement ou des mécanismes de signature logicielle empêche l’exécution de firmwares modifiés. Les puces peuvent intégrer des contre-mesures matérielles contre les attaques de type SCA et FI, et les boîtiers scellés ou doté de capteurs d’intrusions couplés à des système d’effacement peuvent compliquer l’accès physique. Nous devons quand même avouer qu’il n’est malheureusement pas rare, notamment sur le marché de l’IoT consumer, de disposer « d’autoroutes » d’attaques evidentes…mais cela progresse et notamment grâce aux nouvelles régulations.

Autre facteur à prendre en compte est que certaines attaques, comme les attaques par canaux auxiliaire ou injection de fautes demandent un matériel de pointe, une maîtrise technique importante. Elles comportent toujours un risque d’endommager l’appareil étudié et donc exige de disposer de nombreux échantillons. Le succès de ces attaques repose souvent sur un équilibre subtil entre précision extrême en laboratoire et capacité à reproduire l’attaque en conditions[LA1]  réelles.

 

HardSploit NG : l’allié de la phase d’exploitation

Face à ces défis techniques et à la complexité croissante des attaques matérielles, HardSploit NG ambitionne de révolutionner la phase d’exploitation. Là où les méthodes traditionnelles nécessitent une multitude d’outils disparates, des câblages complexes et des configurations manuelles chronophages, HardSploit NG vise à centraliser et automatiser les opérations critiques.

Grâce à son architecture FPGA reconfigurable, la plateforme pourra s’adapter dynamiquement aux besoins de l’auditeur. Qu’il s’agisse d’interagir avec des interfaces JTAG, SWD ou UART, HardSploit NG proposera des modules préconfigurés qui accéléreront considérablement le processus d’exploitation. Plus besoin de jongler entre différents adaptateurs ou de recâbler l’installation à chaque nouvelle tentative : tout se pilotera depuis une interface unifiée.

Pour l’extraction et la modification de firmware, HardSploit NG offrira des protocoles de communication fiables qui minimiseront les risques de corruption des données. La capacité à enregistrer et rejouer des séquences de commandes permettra de reproduire précisément les conditions d’une attaque réussie, un avantage considérable lors de la documentation des vulnérabilités ou de la validation des correctifs. Cette reproductibilité transformera le processus d’essais répétés en une démarche méthodique et contrôlée, plutôt qu’en une succession de tentatives hasardeuses.

Dans le cadre des attaques par canal auxiliaire, HardSploit NG pourra être intégré à des modules de mesure pour capturer avec précision les variations de consommation électrique ou les émissions électromagnétiques. Cette synergie entre acquisition de signaux et interaction avec la cible facilitera grandement la corrélation entre les opérations effectuées et les fuites physiques observées. L’analyse deviendra ainsi plus rapide et plus fiable.

Pour les attaques par injection de fautes, la précision temporelle qu’offrira le FPGA permettra de générer des glitchs de tension ou d’horloge avec un timing très fin. Cette capacité à synchroniser parfaitement les perturbations avec les opérations sensibles du composant augmentera significativement les chances de succès, tout en réduisant le nombre de tentatives nécessaires et donc le risque d’endommager l’appareil cible.

Au final, HardSploit NG n’aura pas vocation à remplacer l’expertise de l’auditeur, mais à amplifier ses capacités en lui offrant un environnement de travail robuste, flexible et efficient. Il permettra de se concentrer sur l’analyse et la stratégie d’attaque plutôt que sur les aspects logistiques et techniques de bas niveau, tout en documentant automatiquement chaque étape du processus d’exploitation.

 


 

Avec cette plongée dans la phase d’exploitation, nous avons montré comment exploiter et faire basculer les découvertes en accès réel à un système, en révélant les risques concrets auxquels les équipements sont exposés.

Le prochain billet viendra clore cette série en abordant une étape essentielle du processus d’audit: la rédaction du rapport, là où la technique rencontre la pédagogie pour transformer une démonstration d’exploitation en levier d’amélioration concrète. Restez connectés !

 

DERNIÈRES PUBLICATIONS

Hardsploit NG : La nouvelle carte d'audit matériel

Les coulisses d’un test d’intrusion matériel : Exploitation, démontrer l’impact des vulnérabilités

Billet de blog 2 #4 Après avoir passé du temps ...

Comment optimiser (accélérer) réellement le chiffrement / déchiffrement ?

Il y a peu, nous avons découvert un article de ...

Pourquoi adopter EBIOS RM pour votre analyse de risque ?

L’analyse de risque cyber est désormais un élément fondamental de ...