Partager

µArchiFI : l’analyse pré-silicium formelle de vulnérabilité à des attaques par injection de fautes

µArchiFI est un outil d’analyse pré-silicium formel de la robustesse de systèmes embarqués à des attaques par injection de fautes. µArchiFI est notamment capable de prendre en compte les interactions subtiles entre une microarchitecture et le logiciel qui s’exécute sur un processeur.

µArchiFI permet soit :

  • d’identifier des vulnérabilités exploitables au niveau logiciel s’appuyant sur ces interactions entre le logiciel et le matériel,
  • de prouver formellement la sécurité d’un système embarquant des contre-mesures à des injections de fautes.

µArchiFI est disponible en open source.

L'usage

Une analyse pre-silicium de la micro-architecture de processeurs

Les attaques par injection de fautes exploitent des perturbations physiques (rayonnement, perturbations d’horloge, etc.) dans un système embarqué pour  accéder à des données sensibles ou acquérir des privilèges d’exécution. Les effets des fautes ont des conséquences qui se propagent depuis le matériel jusqu’au logiciel, rendant insuffisantes les modélisations uniquement matérielles ou logicielles.

µArchiFI permet une analyse complète en intégrant processeur, logiciel et modèle d’attaquant, aidant à concevoir et vérifier des contre-mesures contre des attaques par injection de fautes.

Ses atouts

Expertise, fonctionnalités, souveraineté

Les principales forces de µArchiFI sont :

  • Analyse pre-silicium des conséquences, au niveau de binaires de logiciels, de l’application d’un modèle de fautes sur des conceptions RTL (Register Transfer Level) de processeurs
  • Technique d’analyse exhaustive via l’utilisation de méthodes formelles
  • Technique originale d’analyse de contre-mesures matérielles applicable au niveau netlist de circuits matériels
  • Application à différents processeurs, sécurisés avec des contre-mesures matérielles et/ou logicielles, mais aussi à accélérateurs matériels cryptographiques
Applications

Détection de vulnérabilité, rétro-ingénierie…

µArchiFI peut identifier d’éventuelles vulnérabilités d’un système logiciel/matériel ou bien prouver sa robustesse pour un modèle de fautes donné.

µArchiFI est donc utile à un concepteur de contre-mesures en lui permettant d’évaluer l’apport de celles-ci pour sécuriser un système lors de sa conception. Ainsi, durant la conception d’un système, le concepteur matériel peut analyser les vulnérabilités trouvées afin de corriger la spécification et l’implémentation des contre-mesures.

µArchiFI est également utile pour analyser le niveau de robustesse d’un système à des injections de fautes.

Cas d'usage

Analyse d’un « secure boot » d’une racine de con-fiance matérielle (RoT)

Un composant clé dans la sécurité des systèmes sur puce (SoC) est une chaîne de confiance matérielle (RoT). Traditionnellement, l’analyse de la robustesse d’une RoT repose sur une caractérisation post-silicum coûteuse et aux résultats souvent variables (évaluateur, outils, etc.).

En collaboration avec l’Université Technique de Graz (TU Graz), la technique originale k-FRP a permis une première mondiale : une analyse sécuritaire d’OpenTitan contre les attaques  par injection de fautes. OpenTitan est la première RoT matérielle open-source développé par un consortium d’acteurs de premier plan des systèmes numériques et de la cybersécurité.

Réalisations

Des premières mondiales

µArchiFI revendique plusieurs premières mondiales qui témoignent de son avance technologique :

  • Une identification automatique de vulnérabilités sur un processeur non sécurisé et la compréhension de nouveaux effets exploitant la microarchitecture (2022)
  • Une preuve de robustesse d’une contre-mesure matérielle/logicielle sur un périmètre donné et une injection de fautes (2022),
  • Une identification d’une vulnérabilité jusqu’alors inconnue dan le RoT OpenTitan, la vérification formelle que le patch appliqué au design d’OpenTitan corrige bien la vulnérabilité et donc la preuve de robustesse à 1 injection de faute de son processeur sécurisé (2024)
  • La démonstration que la vulnérabilité identifiée n’était pas exploitable dans les 2500 instructions du premier étage de code de démarrage d’OpenTitan (2024).

Publications

Accéder à la page µArchiFI sur Github

À lire également

Domaines applicatifs

Cybersécurité : garantir la sécurité et la confidentialité par conception

Au cœur des enjeux de souveraineté numérique, la cybersécurité constitue aujourd’hui un pan essentiel de nos sociétés. Garante de l’autonomie et de la paix dans le cyberespace, elle est un ...
Lire la suite
Plateformes technologiques

Cybersécurité

Identifier les vulnérabilités de systèmes matériels et logiciels et développer des techniques de protection expertes.
Lire la suite