Open-Titan: le nouveau design de la puce de Google protège le cloud là où il est le plus vulnérable
Open-Titan: le nouveau design de la puce de Google protège le cloud là où il est le plus vulnérable

Le Cloud dirige le monde. Étant donné qu’il s’agit d’une source de profit énorme et de l’infrastructure fondamentale de l’avenir, vous pouvez supposer qu’Amazon, Google, IBM et toutes les sociétés de cloud computing qui se chiffrent en milliards connaissent intimement chaque élément matériel, logiciel et code dans leurs data centers. Vous auriez tort.
Pour les pirates, le Data Center est le cerveau de la cible – l’un des points de contrôle les plus importants et l’une des cibles les plus importantes. Les agences de renseignement américaines et chinoises, deux des cyberpuissances les plus avancées au monde, ont ciblé et violé des centres de données dans le cadre de leurs opérations d’espionnage les plus ambitieuses.
Google annonce aujourd’hui une nouvelle conception de puce open source basée sur les leçons que l’entreprise a tirées de leur première couche de défense dans les 19 centres de données de l’entreprise sur les cinq continents : OpenTitan, la version open-source de la puce Titan âgée de deux ans et utilisée dans ces centres de données.
Titan vise à prouver de manière cryptographique que les machines opérant dans le Cloud de Google à 8 milliards de dollars peuvent être fiables, n’ont pas ajouté de vulnérabilités, et ne sont pas subrepticement sous le contrôle de l’adversaire.
« La garantie de sécurité que confère la puce est » super critique lorsque vous gérez la planète « , déclare Royal Hansen, vice-président de l’ingénierie chez Google Cloud.
RoT vs OpenTitan

Une comparaison entre l’OpenTitan et une puce traditionnelle « racine de confiance ». L’objectif du projet open-source est de permettre aux clients des centres de données Google d’inspecter, de comprendre et de faire confiance à leurs machines à partir des niveaux de code les plus bas.
L’open-sourcing de la puce Titan est un effort de Google et de ses partenaires pour accroître la transparence et la confiance aux niveaux les plus bas des machines fonctionnant dans les centres de données. Il est destiné à permettre à quiconque d’inspecter, de comprendre et de faire pleinement confiance aux machines de l’entreprise dès la première mise sous tension. La société d’ingénierie à but non lucratif lowRISC, basée à Cambridge, au Royaume-Uni, gérera le projet.
Comme une ligne de défense supplémentaire contre l’espionnage dans des endroits comme les usines de fabrication de puces, OpenTitan dispose également d’un autotest pour vérifier l’altération de la mémoire chaque fois que la puce démarre.
Vulnérabilités de base
Imaginez un centre de données informatique dans le Cloud comme une pyramide ou, si vous êtes paranoïaque, comme un château de cartes de la taille de l’Everest. Le niveau le plus bas est celui du matériel en silicone qui exécute le premier code à la mise sous tension. La machine démarre, et chaque composant exécute une quantité incroyablement importante de code dans ces tout premiers instants.
Historiquement, il a été difficile d’en savoir beaucoup sur ce code, et encore moins de le comprendre pleinement ou de le sécuriser efficacement. Avant que le logiciel de sécurité ne soit opérationnel, le code comme le firmware est déjà actif et contrôle le processus de démarrage. Cela rend le firmware et d’autres cibles de bas niveau extraordinairement tentants pour les pirates.
L’année dernière, des pirates du gouvernement russe ont été repérés en train de faire de l’espionnage en exploitant des failles dans les logiciels de suivi préinstallés dans le firmware d’un ordinateur.
« Google veut s’assurer qu’à partir du moment où vous appuyez sur le bouton d’alimentation, ils peuvent vérifier exactement la séquence de tout ce qui se passe avant l’exécution de la première instruction « , explique Kaveh Razavi, chercheur en sécurité à la Vrije Universiteit d’Amsterdam.
OpenTitan tuera tout le processus de démarrage si le code généré par le firmware ne correspond pas au code attendu par la puce.
« Si vous ne pouvez pas faire confiance à la machine qui démarre, c’est la fin du jeu « , déclare Gavin Ferris, membre du conseil d’administration de lowRISC. « Peu importe ce que fait le système d’exploitation – si le temps que le système d’exploitation démarre, vous êtes déjà compromis, alors tout cela est théorique. Tu as déjà fini. »
Danger immédiat
Le risque d’attaques de la chaîne d’approvisionnement pour espionner le matériel à un faible niveau est très réel, et une telle attaque est incroyablement abordable.
« Pensez aux millions de serveurs de nos centres de données : nous avons des contrôleurs de gestion de la carte-mère, des contrôleurs d’interface réseau, toutes sortes de puces sur ces cartes mères « , explique Royal Hansen. Il dit que la sécurité doit commencer par le matériel en silicone : « Il ne peut pas être dans le logiciel, parce que vous avez déjà dépassé ce stade au moment où il a commencé à démarrer et à se charger. »
Prenons le cas de MINIX, un système d’exploitation discrètement embarqué par Intel sur les processeurs de plus d’un milliard de machines avant que personne ne réalise ce qui se passait. Face à un système d’exploitation jusqu’alors totalement inconnu et complexe, Google a commencé à travailler pour supprimer le code propriétaire, » exploitable et convivial « , et hautement privilégié de ses plates-formes.
Pour les ingénieurs de Google, MINIX était toute une surface d’attaque qu’ils ne connaissaient pas, ne comprenaient pas et ne défendaient pas. MINIX est l’un des catalyseurs qui ont poussé Google à fabriquer son propre matériel et ont conduit à OpenTitan.
Les groupes de piratage les plus avancés viseront à atteindre la » persistance » afin qu’ils puissent non seulement accéder à une machine piratée, mais aussi rester présents sur cette machine même après un redémarrage. OpenTitan n’est pas une solution miracle, mais il est plus difficile pour un attaquant de persister sans déclencher d’alarme.
« Idéalement pour un attaquant, une fois qu’il a compromis un nœud, il aimerait rester sur cette machine même si le logiciel ou d’autres composants sont mis à jour. Ils aimeraient toujours observer ce qui se passe « , dit M. Razavi.
« Ce sont des adversaires, pas seulement intéressés à compromettre l’infrastructure, dit-il. « Si, à un moment donné, ils souhaitent faire un compromis spécifique, ils auront déjà une emprise sur l’infrastructure. La plupart de ces choses sont, comme vous pouvez l’imaginer, assez secrètes. »
Mais il n’y a pas que ces menaces avancées dont les fournisseurs de cloud computing doivent s’inquiéter. Le scénario cauchemardesque est qu’une fois qu’un acteur sophistiqué trouve une vulnérabilité particulièrement mauvaise, n’importe qui peut l’utiliser. Plus tôt cette année, IBM a dû faire face à cette situation lorsque les chercheurs ont découvert qu’ils pouvaient exploiter la vulnérabilité des micrologiciels de bas niveau, puis persister et espionner cette machine sur tous les clients et redémarrages.
« Chaque niveau a un potentiel pour l’injection de mauvais code, dit Royal Hansen. « La seule façon de le détecter est de vérifier dès le début que le code est le code que vous pensiez obtenir. »
https://github.com/lowRISC/opentitan
https://www.wired.com/story/plant-spy-chips-hardware-supermicro-cheap-proof-of-concept/