Un groupe de chercheurs de l'Université de technologie de Graz (Autriche), précédemment connu pour avoir développé des méthodes d'attaque pour MDS, NetSpectre, Throwhammer et ZombieLoad, a récemment annoncé qu'ils développaient une nouvelle méthode d'attaque par canal auxiliaire, nommée « PLATYPUS ».
L'attaque permet la reconstruction de données calculées à partir d'informations reçues par un utilisateur non privilégié via l'interface de surveillance de l'alimentation RAPL fournie dans les processeurs modernes Intel (CVE-2020-8694, CVE-2020-8695) et AMD (CVE-2020-12912).
À propos de PLATYPUS
Les chercheurs ont pu démontrer l'extraction de la clé RSA privée de l'enclave Intel SGX utilisée pour le chiffrement à l'aide de la bibliothèque mbed TLS, ainsi que des clés AES utilisées pour le chiffrement AES-NI au niveau du noyau Linux.
De plus, il est démontré qu'une attaque peut être utilisée pour contourner les mécanismes de protection et déterminer les paramètres de randomisation de l'espace d'adressage (KASLR) lors de l'exploitation de diverses vulnérabilités.
Cette attaque exploite les fluctuations de la consommation électrique du processeur lors de l'exécution de certaines instructions, du traitement de différents opérandes et de la récupération de données en mémoire, permettant ainsi à l'attaquant de déterminer la nature des données chargées. Contrairement aux méthodes d'attaque similaires développées précédemment et analysant les fluctuations de tension, PLATYPUS ne nécessite ni accès physique à l'ordinateur ni connexion à un oscilloscope, mais uniquement l'utilisation de l'interface RAPL (Running Average Power Limit) disponible sur les processeurs Intel et AMD, à commencer par les familles Sandy Bridge et Zen.
Nous tirons parti d'un accès sans privilège à l'interface Intel RAPL en exposant la consommation d'énergie du processeur pour déduire des données et extraire des clés cryptographiques.
Le problème est aggravé par le fait que le framework powercap ajouté au noyau Linux donne accès aux compteurs RAPL aux utilisateurs non privilégiés, ce qui permet de suivre la consommation de CPU et de DRAM. Sous Windows et macOS, l'attaque nécessite l'installation du package Intel Power Gadget (ce package nécessite un accès privilégié).
L'attaque est entravée par la très faible résolution de mesure, inégalée par la précision obtenue avec un oscilloscope. En particulier, RAPL peut prendre des mesures à 20 kilohertz et des valeurs moyennes, alors qu'un oscilloscope peut prendre des mesures à plusieurs gigahertz. Cependant, la précision de RAPL s'est avérée suffisante pour extraire des informations du flux d'instructions général sur l'exécution d'instructions répétées avec des données ou opérandes différents.
Intel et AMD ont publié une mise à jour de leurs pilotes pour Linux , limitant l'accès à RAPL à l'utilisateur root. Les développeurs de l'hyperviseur Xen ont également publié une solution bloquant l'accès à RAPL depuis les systèmes invités.
Dans le même temps, les restrictions d'accès ne suffisent pas à bloquer les attaques contre les enclaves Intel SGX qui peuvent être menées par des attaquants ayant obtenu un accès privilégié au système.
Pour se prémunir contre ces attaques, Intel a également publié une mise à jour du microcode , qui corrige plusieurs autres vulnérabilités susceptibles d'entraîner des fuites de données. Au total, la mise à jour d'Intel de novembre a corrigé 95 vulnérabilités dans divers produits.
Une gamme assez large de processeurs Intel pour ordinateurs de bureau, portables et serveurs, à commencer par la famille Sandy Bridge, est sujette à des attaques.
Sur les systèmes à processeur AMD, l'interface RAPL existe depuis la famille Zen, mais les pilotes du noyau Linux n'autorisent qu'un accès non privilégié aux statistiques du processeur AMD Rome.
L'attaque peut potentiellement être appliquée aux processeurs ARM, qui ont leurs propres systèmes pour collecter des métriques sur les changements de puissance, et les contrôleurs de puces Marvell et Ampere fournissent un accès non privilégié aux capteurs, mais une analyse détaillée de la possibilité de mettre en œuvre une attaque pour de tels appareils .
Enfin, si vous souhaitez en savoir plus sur ce nouveau type d'attaque, « PLATYPUS », vous trouverez les détails en suivant ce lien.