Nous avons développé et testé un nouveau processeur informatique sécurisé qui déjoue les pirates en changeant aléatoirement sa structure sous-jacente, rendant ainsi pratiquement impossible le piratage.
L'été dernier, 525 chercheurs en sécurité ont passé trois mois à essayer pour pirater notre processeur Morpheus ainsi que d'autres. Toutes les tentatives contre Morpheus ont échoué . Cette étude faisait partie d'un programme parrainé par la US Defense Advanced Research Program Agency pour concevoir un processeur sécurisé qui pourrait protéger les logiciels vulnérables. La DARPA a rendu public les résultats du programme pour la première fois en janvier 2021.
Un processeur est le matériel informatique qui exécute des logiciels. Puisqu'un processeur est à la base de tous les systèmes logiciels, un processeur sécurisé a le potentiel de protéger tout logiciel qui s'exécute dessus contre les attaques. Notre équipe de l'Université du Michigan a d'abord développé Morpheus, un processeur sécurisé qui déjoue les attaques en transformant l'ordinateur en casse-tête, en 2019.
Un processeur a une architecture – x86 pour la plupart des ordinateurs portables et ARM pour la plupart des téléphones – qui est le ensemble d'instructions que le logiciel doit exécuter 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'il consomme.
Les pirates informatiques doivent être intimement familiers avec les détails de la microarchitecture pour greffer leur code malveillant, ou malware, sur des systèmes vulnérables . Pour arrêter les attaques, Morpheus randomise ces détails d'implémentation pour transformer le système en un casse-tête que les pirates doivent résoudre avant de mener des exploits de sécurité. D'une machine Morpheus à une autre, des détails comme les commandes exécutées par le processeur ou le format des données du programme changent de manière aléatoire. Parce que cela se produit au niveau de la microarchitecture, les logiciels exécutés sur le processeur ne sont pas affectés.
Un hacker expérimenté pourrait faire de l'ingénierie inverse sur une machine Morpheus en aussi peu que quelques heures, s'il en avait la possibilité. Pour contrer cela, Morpheus modifie également la microarchitecture toutes les quelques centaines de millisecondes. Ainsi, non seulement les attaquants doivent rétroconcevoir la micro-architecture, mais ils doivent le faire très rapidement. Avec Morpheus, un pirate est confronté à un ordinateur qui n'a jamais été vu auparavant et qui ne sera jamais revu.
Pourquoi c'est important
Pour mener un exploit de sécurité, les pirates utilisent des vulnérabilités dans un logiciel pour pénétrer dans un appareil. Une fois à l'intérieur, ils greffent leur malware sur l'appareil. Les logiciels malveillants sont conçus pour infecter le périphérique hôte afin de voler des données sensibles ou d'espionner les utilisateurs.
L'approche typique de la sécurité informatique consiste à corriger les vulnérabilités logicielles individuelles pour empêcher les pirates d'entrer. Pour que ces techniques basées sur des correctifs réussissent, les programmeurs doivent écrire un logiciel parfait 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 n'affectent pas le 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. Avec cette approche, Morpheus protège tout logiciel vulnérable qui s'exécute dessus.
Quelles autres recherches sont en cours
Pendant longtemps, les concepteurs de processeurs ont considéré la sécurité comme un problème pour les programmeurs de logiciels, puisque les programmeurs ont fait les bogues logiciels qui conduisent à problèmes de sécurité. Mais récemment, les concepteurs d'ordinateurs ont découvert que le matériel peut aider à protéger les logiciels.
Des efforts universitaires, tels que Capability Hardware Enhanced RISC Instructions à l'Université de Cambridge, ont démontré une forte protection contre les bogues de mémoire. Des efforts commerciaux ont également commencé, comme celui d'Intel, qui sera bientôt publié Control-flow Enforcement Technology .
Morpheus adopte une approche sensiblement différente pour ignorer les bogues et aléatoirement son implémentation interne pour contrecarrer exploitation de bugs. Heureusement, ce sont des techniques complémentaires, et leur combinaison rendra probablement les systèmes encore plus difficiles à attaquer.
Et maintenant
Nous examinons comment les aspects fondamentaux de la conception de Morpheus peuvent être appliqués pour protéger les données sensibles sur les appareils et dans le nuage. En plus de randomiser les 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é sans être un fardeau pour les programmeurs de logiciels?
Cet article de Todd Austin Professeur de génie électrique et d'informatique, Université du Michigan et Lauren Biernacki Ph.D. Candidate in Computer Science & Engineering, University of Michigan est republiée de The Conversation sous une licence Creative Commons. Lire l'article original .
Source link