Peut-on vraiment pirater une puce sécurisée ? Les experts en sécurité

Nous avons demandé à des chercheurs en sécurité matérielle d’expliquer comment fonctionne l’injection de fautes sur les puces

Cet article est disponible dans les langues suivantes :

Author logo
Patrick Dike-Ndulue
Post image

Les Secure Elements sont partout : dans les smartphones, hardware wallets, passeports électroniques, cartes bancaires, clés de voiture et cartes SIM. Ces minuscules puces protègent certaines des données les plus sensibles que nous transportons. La plupart affichent des certifications et des niveaux d’assurance qui suggèrent une invulnérabilité quasi totale. Pourtant, la recherche sur les attaques par injection de fautes montre une réalité plus nuancée.


Nous avons interrogé Sergei Skorobogatov, ancien membre du Security Group de l’Université de Cambridge (fondé par le feu Ross Anderson), qui passe sa carrière à sonder les limites physiques de ces puces. Il dirige Cambridge Research and Engineering, spécialisé dans la récupération de données sur circuits intégrés endommagés et l’analyse de composants pour détecter d’éventuels backdoors. 

Nous avons également interviewé Shivam Bhasin, chercheur à la Nanyang Technological University de Singapour. Bhasin est expert en sécurité matérielle et injection de fautes, l’art de provoquer des perturbations physiques ciblées pour forcer les puces sécurisées à se comporter de manière inattendue.

À quoi servent les Secure Elements

Avant de comprendre comment ils cèdent, voyons ce que les Secure Elements sont censés empêcher.

Un microcontrôleur classique, comme ceux des capteurs IoT ou des cartes Arduino basiques, stocke son firmware et ses données dans une mémoire accessible avec des outils standards. Il suffit de connecter une sonde de débogage pour extraire le contenu de la puce.

Certaines puces offrent une bonne protection, tandis que d’autres, pourtant plus sécurisées, cachent parfois des backdoors dans leurs interfaces de débogage. Les microcontrôleurs sur mesure dans l’automobile résistent souvent mieux aux attaques, faute de documentation, par leur conception unique et l’absence d’échantillons vierges. Le niveau de sécurité varie donc selon les fabricants et les appareils.
 

Un Secure Element est conçu dès le départ pour résister à la fois aux attaques logiques (logiciels malveillants, failles de protocole) et physiques (sondage, imagerie, sabotage).

Ses défenses incluent des bus mémoire chiffrés, des grilles actives détectant toute intrusion physique, un timing d’exécution aléatoire pour contrer l’analyse par canaux auxiliaires, et des capteurs qui effacent les données sensibles en cas de tension, température ou exposition lumineuse anormale.
 

Des schémas de certification comme le Common Criteria classent les Secure Elements de EAL1 à EAL7 selon la profondeur de leur évaluation de sécurité. 

Bhasin reconnaît la solidité de cette base. Les Secure Elements, dit-il, « sont généralement développés par des fournisseurs expérimentés et subissent des tests d’intrusion rigoureux ainsi que des certifications formelles avant leur mise sur le marché ». Mais il nuance : « Aucun système n’est totalement infaillible. »

Pourquoi le matériel parfaitement sécurisé n’existe pas

Skorobogatov est catégorique sur les limites de la sécurité matérielle : « Il est impossible de concevoir un appareil parfaitement sécurisé », affirme-t-il. « Toute puce comporte inévitablement des défauts, car elle est conçue par des humains qui ne peuvent anticiper toutes les attaques. Même certaines implémentations matérielles, comme la mémoire Flash, peuvent introduire des vulnérabilités non prévues lors de la conception. »


Bhasin insiste aussi sur le fait que la sécurité ne repose jamais sur un seul mécanisme.

« Les puces modernes s’appuient sur une chaîne de confiance qui démarre au niveau matériel et valide systématiquement chaque composant, du bootloader sécurisé jusqu’à l’application vérifiée », explique-t-il. Chaque maillon vérifie le suivant : le matériel valide le bootloader, qui valide le système d’exploitation ou le firmware, lequel valide l’application. Si la chaîne tient, seul le code autorisé s’exécute sur la puce.

Le problème, selon Bhasin, c’est que « la moindre manipulation de cette chaîne peut compromettre l’ensemble du système, permettant potentiellement l’exécution d’applications non autorisées ou malveillantes ».
 

C’est le principe de l’injection de fautes : il suffit de perturber un maillon au bon moment. Si le bootloader saute la vérification de signature, il chargera n’importe quel firmware. Si un drapeau de sécurité passe de verrouillé à déverrouillé, la puce désactive ses propres protections.

 

Exemples historiques

En 2010, le chercheur Christopher Tarnovsky a réussi à contourner la puce Infineon SLE 66 CL PE, certifiée EAL4+ et utilisée dans des modules TPM et cartes TV satellite, en combinant décapsulation chimique, microsondage et édition de circuit par faisceau d’ions focalisé (FIB). Cette attaque a nécessité des mois de travail et du matériel spécialisé, mais elle a prouvé que les contre-mesures physiques jugées à la pointe pouvaient être contournées de façon méthodique.

Plus récemment, des chercheurs ont montré que même des puces récentes, dotées de protections avancées, restent vulnérables à des attaques non anticipées lors de leur conception. La mémoire Flash, citée par Skorobogatov, demeure un point faible récurrent : ses propriétés physiques peuvent révéler des informations sur les données stockées, et ses mécanismes d’écriture/effacement peuvent être détournés au-delà des prévisions des concepteurs.

Vulnérabilités structurelles à l’usine

Il existe aussi un problème structurel lié à la fabrication. La plupart des puces sont livrées avec des interfaces de test (ports JTAG, chaînes de scan, modes de débogage propriétaires) utilisées pour le contrôle qualité après production. Ces interfaces donnent un accès profond à l’état interne de la puce. Elles sont censées être désactivées définitivement à l’usine en grillant des fusibles OTP (One-Time Programmable) ou en activant des bits de verrouillage.


En pratique, elles constituent une surface d’attaque latente. « Si un attaquant parvient à réactiver ces fonctions », note Skorobogatov, « l’accès total à l’appareil peut être rétabli ». Des chercheurs l’ont démontré sur plusieurs familles de puces, parfois à l’aide d’un laser pour retourner le bit qui contrôle l’accès au mode test, « dégrillant » ainsi un fusible au niveau logique.

Reconnaissance d’abord, laser ensuite

Attaquer un Secure Element exige une méthodologie structurée, en plusieurs étapes. Skorobogatov décrit un processus qui commence bien avant d’allumer un laser ou de connecter une sonde.

Étape 1 : collecte d’informations

La première étape est la reconnaissance. Skorobogatov explique que la plupart des attaques commencent par de l’intelligence open source : fiches techniques, documentations développeur, brevets, supports marketing. Tout ce qui permet d’affiner la compréhension de l’architecture. Les attaquants étudient aussi « des appareils similaires bien documentés, ou des prédécesseurs connus pour leurs failles », en partant de l’existant pour remonter vers l’inconnu.


Les chercheurs épluchent les datasheets publiques, brevets, documentations, articles académiques et même les présentations marketing. Une simple mention d’un cœur de processeur ou d’une architecture mémoire peut réduire fortement le champ d’investigation.

Si la puce est une évolution d’une famille déjà étudiée, l’attaquant peut déjà comprendre 80 % de l’architecture avant même de toucher l’appareil.
 

Étape 2 : rétro-ingénierie

Le processus passe ensuite à la rétro-ingénierie à plusieurs niveaux : logiciels, firmware interne, bootloaders, puis la logique silicium elle-même. L’objectif est de dresser une cartographie détaillée du fonctionnement de la puce : comment circulent les données, où sont stockées les clés, quelles routines gèrent l’authentification.

La rétro-ingénierie logicielle peut consister à extraire et désassembler le firmware (si accessible), à analyser les protocoles de communication entre la puce et son hôte, ou à étudier le code SDK ou les pilotes publics pour déduire les opérations internes.

En rétro-ingénierie matérielle, les chercheurs retirent chimiquement le boîtier de la puce pour exposer la puce de silicium, puis l’imagent couche par couche par microscopie optique ou électronique.

Des outils logiciels spécialisés reconstituent les portes logiques à partir de ces images, aboutissant à un schéma du circuit interne. Ce « delayering » révèle l’emplacement des mémoires, coprocesseurs cryptographiques, générateurs de nombres aléatoires et capteurs de sécurité anti-sabotage.

Étape 3 : attaques actives

Avec cette cartographie, les chercheurs passent à l’exploitation active. L’arsenal est vaste : analyse de puissance, surveillance des émissions électromagnétiques et optiques, injection de fautes par laser, glitchs de tension, manipulation de données au niveau protocole. Skorobogatov précise que chaque technique a ses avantages, mais « leur combinaison donne des résultats plus rapides et efficaces ».

L’analyse de puissance surveille la consommation électrique de la puce en temps réel : chaque instruction ou donnée génère une signature de courant légèrement différente, ce qui, après analyse statistique de nombreux relevés, peut révéler des clés secrètes.

L’analyse des émissions électromagnétiques s’appuie sur le même principe, mais en captant le champ émis par la puce plutôt que sa consommation.

L’analyse optique exploite le fait que les transistors émettent de faibles quantités d’infrarouge lorsqu’ils commutent. En imageant le dos de la puce avec une caméra infrarouge sensible, on peut observer quelles zones du circuit s’activent pendant certaines opérations.

Le glitch de tension consiste à perturber brièvement l’alimentation de la puce à un instant précis. Bien synchronisé, cela peut faire sauter une instruction, corrompre un résultat ou contourner une vérification de sécurité.

La manipulation au niveau protocole cible la communication entre la puce et son hôte. En modifiant les commandes, rejouant des transactions ou injectant des données malformées, il est parfois possible de déclencher des états d’erreur qui divulguent des informations ou contournent les protections.

Laser Fault Injection (LFI) : la technique de précision

Parmi toutes ces techniques, l’injection de fautes par laser occupe une place à part.

Ce qui distingue l’injection de fautes laser, explique Skorobogatov, c’est sa double précision : elle cible « un instant précis et un emplacement exact dans la logique ou la mémoire ». Là où un glitch de tension affecte toute la puce, un faisceau laser focalisé peut viser une seule porte logique ou cellule mémoire. Cela donne à l’attaquant deux leviers : quand la faute survient et où elle frappe sur la puce.

Bhasin détaille ce contrôle : « Sur un système bien caractérisé, un laser peut manipuler des bits spécifiques avec une grande précision. » Cette précision « permet de cibler les drapeaux de sécurité qui pilotent l’état du système, désactivant effectivement les protections ». 

Un drapeau de sécurité est un ensemble de bits qui indique si la puce est verrouillée ou non, si le débogage est activé ou non, et si le bootloader doit vérifier les signatures ou les ignorer. 

Si ce drapeau est perturbé, toute la posture de sécurité de la puce peut changer, corrompant une opération cryptographique et exposant des informations sur la clé secrète. Si la faute est précisément synchronisée pendant une opération cryptographique, elle peut corrompre la sortie et, en analysant ces erreurs, un attaquant peut mathématiquement reconstruire la clé secrète.

L’économie du piratage des Secure Elements

Si l’on peut casser un Secure Element, pourquoi ne le fait-on pas tout le temps ? La réponse tient au coût.

Contourner un Secure Element n’est pas un projet de week-end. Il faut souvent rétro-ingénierie du silicium et du firmware avant même de savoir où chercher une faille. Skorobogatov est direct : « Ce processus peut prendre des mois, voire des années. »

Bhasin décrit la gamme de coûts : « Les équipements nécessaires vont du DIY à quelques dollars jusqu’aux stations laser ou FIB à plus d’un million d’euros. » 

Un setup de glitch de tension basique (FPGA, MOSFET, soudure) coûte moins de 1 000 $. Une station d’injection laser professionnelle vaut entre 150 000 $ et 500 000 $. Un système FIB pour l’édition de circuits avancée dépasse le million.

L’historique le prouve : Skorobogatov note que des puces certifiées EAL5 ou même EAL6 ont été compromises, mais uniquement par « de grandes équipes spécialisées, en laboratoires ou agences gouvernementales, au prix d’efforts et de moyens considérables ».

Motivations non économiques

Bhasin souligne que « des motivations non financières, comme la sécurité nationale, des obligations légales ou la police scientifique », peuvent aussi justifier l’utilisation de moyens sophistiqués et coûteux. Un laboratoire d’État analysant un appareil saisi ne fait pas d’analyse coût/bénéfice au sens commercial. 

Un concurrent bien doté peut acquérir le même matériel, recruter les mêmes experts et investir le temps nécessaire pour casser le Secure Element d’un rival et nuire à la confiance dans son produit. 

Cette dynamique existe déjà dans le secteur des hardware wallets. Le laboratoire Donjon de Ledger a publié plusieurs études montrant des attaques par injection de fautes réussies contre les appareils Trezor, dans une logique de divulgation responsable pour renforcer la sécurité de tout l’écosystème.

Qu’est-ce que cela implique pour la conservation crypto sur hardware ?

Les attaques physiques sur des appareils grand public restent rarement rentables dans la plupart des scénarios réels. Mais Skorobogatov met en garde contre tout excès de confiance. La présence d’un Secure Element dans un appareil « ne garantit pas une protection totale contre toutes les attaques ». Avec assez de temps et de ressources, un attaquant déterminé trouvera une faille.

La sécurité réelle d’un hardware wallet dépend de toute la chaîne : Secure Element, firmware, protocole de communication avec l’application, intégrité de la chaîne logistique, et choix de l’utilisateur.

Une défense souvent sous-estimée provient de la gestion de la dérivation des clés. Beaucoup d’appareils cryptographiques ne stockent pas la clé brute sur la puce, mais un hash du mot de passe ou du code PIN. La clé réelle est dérivée à la volée lors de la signature. Même une compromission physique totale ne donne donc pas immédiatement accès aux clés.

Même si un attaquant obtient un accès physique complet, Skorobogatov précise que le succès n’est pas garanti. Si l’utilisateur a choisi un mot de passe robuste, il ne reste que la force brute (essayer de nombreux mots de passe), « ce qui pourrait prendre des années, même sur de puissants serveurs ».

Voir plus large

La cryptographie offre des garanties mathématiques. Mais ces garanties reposent sur du matériel physique, dans le monde réel, où les transistors peuvent défaillir, les photons retourner des bits, et les modes de test être réactivés.

Pour les fabricants, la sécurité est une discipline d’ingénierie continue : surveiller la recherche, mettre à jour les modèles de menace, concevoir des systèmes résilients face à des attaques toujours plus sophistiquées. 

Côté utilisateur, même si ces méthodes restent réservées à des acteurs très équipés, elles rappellent l’importance de la garde physique. 

Même si l’injection de fautes requiert des équipements spécialisés et une expertise poussée, elle rappelle que la sécurité matérielle vise à rendre l’attaque plus coûteuse que la valeur des actifs protégés.

Références

  1. Sergei P. Skorobogatov M.Sc, Ph.D. Research Associate at University of Cambridge 
  2. Shivam Bhasin - Google Scholar 
  3. University of Cambridge Security Group
  4. Ross Anderson obituary – The Register, 2024
  5. Security community mourns the death of Ross Anderson – IAPP, 2024
  6. Researcher Cracks Security of Widely Used Computer Chip (Infineon SLE 66 CL PE) – Dark Reading, 2010
  7. Ex-Army man cracks popular security chip (Christopher Tarnovsky / Infineon hack) – The Register, 2010
  8. Black Hat: Researcher claims hack of chip used to secure computers, smartcards – Computerworld, 2010
  9. Common Criteria for Information Technology Security Evaluation, Part 5 – Common Criteria Portal (official standard)
  10. Evaluation Assurance Level (EAL) explained – BSI, German Federal Office for Information Security
  11. Fault Injection Attacks on Cryptographic Devices: Theory, Practice, and Countermeasures – IEEE, 2012
  12. Side-Channel Attack – NIST CSRC Glossary
  13. What is JTAG? – XJTAG
  14. Why Every Chip Can Be Hacked With This Tool (Focused Ion Beam) – Semiconductor Engineering
  15. Key-Derivation Function – NIST CSRC Glossary
  16. Cryptographic Hash Function – NIST CSRC Glossary
Author logo
Auteur Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
Examiné par Rukkayah Jigam

Writer & editor covering digital assets and product updates.