Répondre aux exigences du règlement sur la cyberrésilience avec une racine de confiance matérielle
De nombreux dispositifs embarqués sont fournis avec des vulnérabilités connues ou des identifiants par défaut que les fabricants ne parviennent pas toujours à corriger en temps voulu. Le règlement sur la cyberrésilience (CRA) de l'Union européenne vise à améliorer la sécurité des produits comportant des composants numériques. Le règlement s'attaque à ces problèmes en imposant des exigences de cybersécurité obligatoires tout au long du cycle de vie d'un produit, depuis la conception et le développement jusqu'à la maintenance après-vente.
Un moyen courant de répondre à ces exigences, en particulier pour les dispositifs IoT et embarqués, est d'exploiter la racine de confiance (Root of Trust, RoT) basée sur le matériel. Une racine de confiance matérielle est une source de confiance au sein de tout système cryptographique, qui fournit des fonctions de sécurité clés telles que le démarrage sécurisé, le stockage sécurisé, des opérations cryptographiques et l'authentification des dispositifs.
Dans le contexte des mesures de sécurité logicielle, lorsqu'un attaquant obtient des privilèges au niveau du noyau (anneau 0) ou de l'hyperviseur (anneau -1), il peut accéder à la mémoire et contourner les protections. Cependant, la racine de confiance matérielle opère dans un périmètre cryptographique distinct, souvent sur un coprocesseur différent ou dans un environnement d'exécution isolé.
Par conséquent, en exploitant les fonctionnalités de racine de confiance matérielle, les fabricants peuvent répondre aux exigences fondamentales du règlement CRA, telles que des mécanismes d'identité et d'authentification robustes, des mises à jour sécurisées, la gestion des vulnérabilités et la suppression des données du système. Dans la section suivante, nous allons explorer la mise en œuvre technique des exigences CRA via la racine de confiance.
Figure 1 : Puce d'authentification STSAFA110DFSPL02 de STMicroelectronics et élément sécurisé IoT avec service de vérification de signature via le démarrage sécurisé et la mise à niveau micrologicielle. (Source de l'image : STMicroelectronics)
Mise en œuvre technique
1. Intégrité du système via le démarrage sécurisé et mesuré
L'une des fonctions les plus critiques d'une racine de confiance matérielle est d'établir un processus de démarrage fiable. Cela signifie que la racine de confiance contient un code immuable qui s'exécute en premier lorsque le dispositif est mis sous tension, et dont le rôle est de vérifier l'authenticité et l'intégrité de l'étape suivante du logiciel (chargeur d'amorçage, système d'exploitation, etc.) avant de céder le contrôle.
Cela crée une chaîne de confiance à partir du matériel. L'étape précédente vérifie cryptographiquement chaque composant de la séquence de démarrage. Dans la pratique, la racine de confiance vérifie la signature numérique du chargeur d'amorçage à l'aide d'une clé publique embarquée, permettant d'exécuter uniquement les micrologiciels autorisés par le fabricant.
Dans des implémentations plus avancées, une racine de confiance peut également effectuer un démarrage mesuré qui enregistre le hachage cryptographique de chaque étape logicielle à des fins d'attestation à distance. Cela signifie qu'un système externe peut demander la preuve des versions micrologicielles exactes ayant démarré sur le dispositif. Le règlement CRA n'impose pas une telle attestation, mais celle-ci complète l'intention du règlement de permettre aux utilisateurs et aux organisations d'évaluer la sécurité des produits.
2. Identité et authentification fortes
Une racine de confiance matérielle confère à chaque dispositif une identité forte sous la forme d'une clé cryptographique unique ou d'un certificat injecté lors de la fabrication. Cette identité sert de base à l'authentification de la légitimité du dispositif. Par exemple, la puce RoT matérielle de Cisco stocke un certificat SUDI (Secure Unique Device Identifier) et une clé privée, qui sont protégés par le matériel et ne sont pas destinés à être exportés du matériel sécurisé.
Pour les dispositifs IoT à ressources limitées dans lesquels un module de plateforme sécurisée (Trusted Platform Module, TPM) complet n'est pas pratique, la norme TCG DICE (Device Identifier Composition Engine) fournit un mécanisme de racine de confiance matérielle léger. Il lie l'identité à la fois à l'état de la puce et à l'état du logiciel.
Figure 2 : Interface LPC du module TPM AT97SC3204-U2A1A-20 de Microchip Technology avec un accélérateur cryptographique capable de calculer une signature RSA de 2048 bits en 200 ms. (Source de l'image : Microchip Technology)
Au moment de la fabrication, un UDS (Unique Device Secret), une valeur de 256 bits, est stocké dans des fusibles ou dérivé d'une fonction physique non clonable (PUF) et n'est accessible qu'à la couche d'amorçage immuable.
Pour renforcer davantage ce modèle, une implémentation basée PUF est adoptée pour garantir que les clés racine ne sont jamais stockées dans une mémoire non volatile, réduisant ainsi l'exposition aux attaques par extraction physique. Ces mécanismes permettent de répondre aux exigences du règlement CRA en matière d'anti-usurpation, d'authentification sécurisée et de confidentialité.
3. Mises à jour sécurisées et gestion des vulnérabilités
La racine de confiance matérielle ne se limite pas à la sécurité du démarrage initial. Elle reste cruciale pendant le fonctionnement du dispositif, en particulier pour les mises à jour logicielles. Le règlement CRA met fortement l'accent sur la gestion et la correction des vulnérabilités, en exigeant des fabricants qu'ils fournissent des mécanismes permettant de distribuer en toute sécurité les mises à jour et de corriger sans délai les failles connues. Une racine de confiance permet des mises à jour micrologicielles authentifiées et sécurisées en vérifiant la signature numérique des paquets de mise à jour.
Par exemple, Microchip note que la conception de produits conformes au règlement CRA inclut la mise en œuvre de processus de démarrage sécurisé, la garantie de l'intégrité du micrologiciel et l'exécution de mises à jour micrologicielles sécurisées pour la protection contre les menaces émergentes. La racine de confiance peut également appliquer une protection anti-rollback (annulation de la restauration), pour qu'un attaquant ne puisse pas charger un ancien micrologiciel une fois que celui-ci a été corrigé par une mise à jour.
Conclusion
La mise en œuvre d'une racine de confiance matérielle fournit les éléments fonctionnels nécessaires pour répondre aux principales exigences énoncées dans le règlement sur la cyberrésilience. La racine de confiance permet le démarrage sécurisé, l'identité unique du dispositif, l'installation de mises à jour authentifiées, la protection des clés cryptographiques et une plateforme pour la maintenance de la sécurité à long terme. Ensemble, ces capacités répondent pleinement aux exigences essentielles de cybersécurité définies par le règlement CRA.
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.
Visit TechForum


