Informatique confidentielle : le drôle de choix des fondeurs

L’informatique confidentielle est un paradigme technologique dans lequel un traitement de données arbitraire est mis en œuvre de sorte que l’hébergeur n’ait pas la possibilité technique d’accéder aux données.

L’idée est de pouvoir accomplir ce que ni le chiffrement de bout en bout ni le chiffrement homomorphe ne permettent : effectuer tout type de traitement d’une donnée sensible, chez un hébergeur, sans que celui-ci ne puisse y avoir accès.

Enclave et attestation

Afin de pouvoir fonctionner, l’informatique confidentielle repose sur le concept d’enclave sécurisée. Une enclave sécurisée est un environnement d’exécution sur lequel l’hébergeur n’a pas de prise. La mise en œuvre de l’informatique confidentielle repose sur trois acteurs économiques :

Afin que le bénéficiaire puisse avoir la garantie que ses données sont bien reçues et traitées par une enclave sécurisée réelle (et non une émulation par l’hébergeur par exemple), l’enclave doit fournir à ce dernier une preuve des deux faits suivants.

Ce procédé s’appelle l’attestation distante.

Technologies en présence

En 2023, deux technologies d’enclaves se partagent le gros du marché.

Intel SGX

Intel Software Guard Extensions permet d’exécuter du code dans une enclave protégée du système d’exploitation qui l’exécute. Cette excellente vue d’ensemble de Quarks lab permet de vous familiariser avec la technologie : partie 1, partie 2.

La technologie est disponible sur les processeurs de la famille Xeon et a été abandonné sur les autres gammes. Les hébergeurs proposant cette technologie sont les suivants :

AMD SEV

AMD Secure Encrypted Virtualization propose une approche différente de celle d’Intel, en permettant d’exécuter non pas des morceaux de processus mais des machines virtuelles entières dans une enclave sécurisée. Certaines spécifications techniques sont ici. Cette technologie est disponible chez :

Clés d’attestation du processeur

Dans le processus d’attestation évoqué ci-dessus, la première étape pour le bénéficiaire est de s’assurer que l’agent logiciel vers lequel il s’apprête à envoyer ses données sensibles est bien exécuté dans une enclave authentique. Cette preuve est effectuée grâce à une paire de clés dont la part privée réside dans le processeur depuis sa fabrication et est certifiée par le fondeur comme authentique.

Face à des modèles de menace impliquant les agences gouvernementales des États-Unis, le cycle de vie de ces clés pose problème.

Le cas Intel

La clé utilisée, la Root Provisioning Key (RPK), est générée par Intel puis injectée dans le processeur au moment de sa fabrication. Intel connaît la clé. Il s’agit d’une clé sur la courbe elliptique du NIST P-256.

L’inconnue AMD

La clé de certification de la puce (Chip Endorsement Key (CEK)) est dérivée sur la courbe du NIST P-384 à partir d’un secret présent sur la puce. Sauf erreur, aucune information n’est disponible au sujet du cycle de vie de ce secret.

Le cœur du problème

La connaissance des clés privées de certification par les fondeurs n’est pas une contrainte technique. La clé privée pourrait en effet être générée sur le processeur lors du processus de fabrication et ne jamais en sortir, à l’image des bonnes pratiques du domaine des cartes à puce pour des clés destinées à effectuer des signatures électroniques ou des authentifications.

La connaissance des clés privées permettrait à un acteur bénéficiant d’une collusion avec l’hébergeur de mettre en place des attaques contre des enclaves. Ces attaques ne seraient pas détectables, contrairement à celles impliquant de forcer le fondeur à certifier une clé contrôlée par l’attaquant et différente de celle présente sur un processeur authentique.

Conclusion

En l’état actuel des connaissances, aucune des technologies majeures d’informatique confidentielle ne permet de protéger des données contre l’ingérence d’une entité étatique états-unienne.

Ces protections peuvent toutefois arrêter, ou freiner, d’autres catégories d’attaquants et restent donc des outils à utiliser lorsqu’ils sont disponibles.