ARM prend au pied de la lettre la fameuse mantra « security by design » qui sévit depuis quelques années dans l’écosysème IT. Afin d’apporter un niveau de protection supplémentaire à ses puces, et éviter autant que faire se peut des vulnérabilités tel que Spectre/Meltdown, le designer de puces britannique - dont le rachat par Nvidia patine – est passé à l’offensive. Pour cela, il travaille sur une architecture processeur, baptisé Morello, censée renforcer les défenses contre les cyberattaques.  

Cette évolution doit se traduire par des gains en termes de robustesse et de résistance à certains vecteurs d’attaques qui sera à terme implémentés plus largement dans d’autres modèles de puces. Pour l’heure, les puces sous architecture Morello sont disponibles en tant que prototypes à des fins de test. Développeurs et spécialistes en sécurité peuvent donc les décortiquer. Dans le cadre de ce prototype, ARM a implanté l’architecture Morello sur une carte expérimentale embarquant un processeur Armv8.2-A, adapté du processeur serveur Neoverse N1.  

Google et Microsoft parmi les premiers testeurs

Parmi les bêta testeurs, des sociétés comme Google et Microsoft ont montré leur intérêt, mais aussi d’autres comme l’institut de recherche et d’innovation en sécurité britannique DSbD. « L'utilisation de l'architecture des puces pour éliminer des classes entières de problèmes de sécurité avec un impact minimal sur les performances est très prometteuse », a indiqué David Weston, directeur de la sécurité des systèmes d'exploitation chez Microsoft. 

L’architecture Morello repose sur des caractéristiques de sécurité baptisées Cheri (capability hardware enhanced RISC instructions). Elle est le fruit de travaux communs entre Arm et l’université de Cambridge depuis 2015. L’objectif, selon ARM, est de changer la façon dont le CPU opère et de limiter les plages d’adresses des entrées d’allocation mémoire et en restreindre les accès. Les exploits mémoire liés aux processeurs sont l'un des problèmes les plus anciens et les plus difficiles en matière de sécurité logicielle.

Un procédé d'isolation pour piéger le code malveillant

Les mécanismes de sécurité de Morello permettent d'éliminer les nombreux exploits possibles liés à l'allocation de mémoire et à ses débordements. Pour cela, ARM applique ce qu'il appelle compartimentation. « Comme son nom l'indique, la compartimentage isole différentes parties du code critique dans des zones murées individuelles. Le code fonctionnant dans un compartiment n'a accès à aucune autre zone. Cela signifie que même si un attaquant viole un morceau du code ou des données, il est piégé dans cette petite zone », indique le designer de puces.

Afin d’en savoir plus sur cette architecture prometteuse d’ARM, l’agence d’innovation gouvernementale britannique Innovate UK prévoir de lancer des bootcamps autour des développements de Morello. Un webinaire sur ce sujet ce 25 janvier 2022 est d’ailleurs prévu.