Une puce informatique qui change sa microarchitecture et déjoue une armée de pirates informatiques
Une puce informatique qui change sa microarchitecture et déjoue une armée de pirates informatiques

Des chercheurs ont mis au point et testé un nouveau processeur informatique sécurisé qui déjoue les pirates en modifiant de manière aléatoire sa structure sous-jacente, ce qui le rend pratiquement impossible à pirater.
L’été dernier, 525 chercheurs en sécurité ont passé trois mois à essayer de pirater le processeur Morpheus ainsi que d’autres. Toutes les tentatives contre Morpheus ont échoué. Cette étude s’inscrivait dans le cadre d’un programme parrainé par la Defense Advanced Research Program Agency (DARPA) des États-Unis, qui visait à concevoir un processeur sécurisé capable de protéger les logiciels vulnérables. La DARPA a rendu publics les résultats de ce programme pour la première fois en janvier 2021.
Un processeur est la pièce de matériel informatique qui exécute les programmes logiciels. Comme un processeur est à la base de tous les systèmes logiciels, un processeur sécurisé a le potentiel de protéger tout logiciel s’exécutant sur lui contre les attaques. Une équipe de l’université du Michigan a développé pour la première fois en 2019 Morpheus, un processeur sécurisé qui déjoue les attaques en transformant l’ordinateur en puzzle.
Un processeur a une architecture – x86 pour la plupart des ordinateurs portables et ARM pour la plupart des téléphones – qui est le jeu d’instructions dont les logiciels ont besoin pour fonctionner sur le processeur. Les processeurs ont également une microarchitecture, ou les « tripes » qui permettent l’exécution du jeu d’instructions, la vitesse de cette exécution et la quantité d’énergie qu’elle consomme.
Les pirates doivent connaître parfaitement les détails de la microarchitecture pour greffer leur code malveillant, ou malware, sur les systèmes vulnérables. Pour mettre fin aux attaques, Morpheus randomise ces détails de mise en œuvre afin de transformer le système en un puzzle que les pirates doivent résoudre avant d’effectuer des exploits de sécurité. D’une machine Morpheus à l’autre, des détails tels que les commandes exécutées par le processeur ou le format des données du programme changent de manière aléatoire. Comme cela se produit au niveau de la microarchitecture, les logiciels fonctionnant sur le processeur ne sont pas affectés.

Un ventilateur au sommet d’un carré métallique au milieu d’une carte de circuit imprimé d’ordinateur
Le processeur de l’ordinateur Morpheus, situé dans le carré sous le ventilateur de cette carte de circuit imprimé, modifie rapidement et continuellement sa structure sous-jacente pour déjouer les pirates.
Un pirate informatique expérimenté pourrait, s’il en avait l’occasion, procéder à l’ingénierie inverse d’une machine Morpheus en quelques heures seulement. Pour contrer cela, Morpheus modifie également la microarchitecture toutes les quelques centaines de millisecondes. Ainsi, les attaquants doivent non seulement effectuer une rétro-ingénierie de la microarchitecture, mais aussi le faire très rapidement. Avec Morpheus, un pirate est confronté à un ordinateur qui n’a jamais été vu auparavant et qui ne le sera plus jamais.
Pourquoi c’est important
Pour réaliser un exploit de sécurité, les pirates utilisent les vulnérabilités des logiciels pour s’introduire dans un appareil. Une fois à l’intérieur, ils greffent leur logiciel malveillant sur l’appareil. Les logiciels malveillants sont conçus pour infecter le dispositif hôte afin de voler des données sensibles ou d’espionner les utilisateurs.
L’approche habituelle en matière de sécurité informatique consiste à corriger les vulnérabilités individuelles des logiciels pour empêcher les pirates d’entrer. Pour que ces techniques basées sur les correctifs soient efficaces, les programmeurs doivent écrire des logiciels parfaits, sans aucun bogue. Mais demandez à n’importe quel programmeur, et l’idée de créer un programme parfait est risible. Les bogues sont partout, et les bogues de sécurité sont les plus difficiles à trouver, car ils ne nuisent pas au fonctionnement normal d’un programme.
Morpheus adopte une approche distincte de la sécurité en augmentant le processeur sous-jacent pour empêcher les attaquants de greffer des logiciels malveillants sur l’appareil. Grâce à cette approche, Morpheus protège tout logiciel vulnérable qui s’exécute sur lui.
Quelles sont les autres recherches en cours ?
Pendant longtemps, les concepteurs de processeurs ont considéré que la sécurité était un problème pour les programmeurs de logiciels, puisque ces derniers créaient les bogues logiciels à l’origine des problèmes de sécurité. Mais récemment, les concepteurs d’ordinateurs ont découvert que le matériel pouvait aider à protéger les logiciels.
Des efforts universitaires, tels que le projet Capability Hardware Enhanced RISC Instructions de l’université de Cambridge, ont démontré une forte protection contre les bogues de mémoire. Des efforts commerciaux ont également été entrepris, tels que la technologie Control-flow Enforcement d’Intel, qui sera bientôt disponible.
Morpheus adopte une approche sensiblement différente qui consiste à ignorer les bogues et à rendre aléatoire sa mise en œuvre interne afin de déjouer l’exploitation des bogues. Heureusement, il s’agit de techniques complémentaires, et leur combinaison rendra probablement les systèmes encore plus difficiles à attaquer.
Prochaines étapes
Des études seront menées sur les aspects fondamentaux de la conception de Morpheus qui peuvent être appliqués pour protéger les données sensibles sur les appareils des particuliers et dans le Cloud. Outre la randomisation des détails de mise en œuvre d’un système, comment pouvons-nous randomiser les données d’une manière qui préserve la confidentialité tout en n’étant pas un fardeau pour les programmeurs de logiciels ?
https://theconversation.com/shape-shifting-computer-chip-thwarts-an-army-of-hackers-159990