Lorsque Spectre, une classe de vulnérabilités critiques impactant les processeurs modernes, a été révélée publiquement en janvier 2018, les chercheurs à l’origine de la découverte mentionné, «Comme ce n’est pas facile à corriger, cela nous hantera pendant un certain temps», expliquant l’inspiration derrière la dénomination des attaques d’exécution spéculative.

En effet, cela fait plus de trois ans, et il n’y a pas de fin à Spectre en vue.

Une équipe d’universitaires de l’Université de Virginie et de l’Université de Californie à San Diego a découvert un nouvelle ligne d’attaque qui contourne toutes les protections Spectre actuelles intégrées aux puces, mettant potentiellement presque tous les systèmes – ordinateurs de bureau, ordinateurs portables, serveurs cloud et smartphones – à nouveau en danger comme ils l’étaient il y a trois ans.

auditeur de mot de passe

La divulgation de Spectre et fusion a ouvert un vannes de toutes sortes, avec des variantes infinies des attaques qui ont été découvertes dans les années qui ont suivi, alors même que les fabricants de puces comme Intel, ARM et AMD se sont continuellement efforcés d’incorporer des défenses pour atténuer les vulnérabilités qui permettent à un code malveillant de lire les mots de passe, les clés de cryptage et d’autres informations précieuses directement à partir de la mémoire noyau d’un ordinateur.

Attaque par canal latéral de synchronisation en son sein, Spectre rompt l’isolement entre différentes applications et tire parti d’une méthode d’optimisation appelée exécution spéculative dans les implémentations matérielles de CPU pour tromper les programmes en les faisant accéder à des emplacements arbitraires en mémoire et ainsi divulguer leurs secrets.

“Une attaque Spectre incite le processeur à exécuter des instructions sur le mauvais chemin”, ont déclaré les chercheurs. “Même si le processeur récupère et accomplit correctement sa tâche, les pirates peuvent accéder aux données confidentielles pendant que le processeur se dirige dans la mauvaise direction.”

La nouvelle méthode d’attaque exploite ce qu’on appelle une micro-opération (aka micro-opérations ou μops) cache, un composant sur puce qui décompose les instructions de la machine en commandes plus simples et accélère le calcul, en tant que canal secondaire pour divulguer des informations secrètes. Les caches micro-op sont intégrés aux machines Intel fabriquées depuis 2011.

“La défense suggérée par Intel contre Spectre, qui s’appelle LFENCE, place le code sensible dans une zone d’attente jusqu’à ce que les contrôles de sécurité soient exécutés, et ce n’est qu’alors que le code sensible est autorisé à s’exécuter”, Ashish Venkat, professeur adjoint à l’Université de Virginie et un co-auteur de l’étude, a déclaré. “Mais il s’avère que les murs de cette zone d’attente ont des oreilles, ce que notre attaque exploite. Nous montrons comment un attaquant peut faire passer des secrets à travers le cache micro-op en l’utilisant comme un canal secret.”

Sur les microarchitectures AMD Zen, la primitive de divulgation micro-ops peut être exploitée pour obtenir un canal de transmission de données secret avec une bande passante de 250 Kbps avec un taux d’erreur de 5,59% ou 168,58 Kbps avec correction d’erreur, ont détaillé les chercheurs.

Intel, dans ses directives pour contrer les attaques de synchronisation contre les implémentations cryptographiques, recommande d’adhérer aux principes de programmation à temps constant, une pratique plus facile à dire qu’à faire, nécessitant que les changements logiciels ne puissent à eux seuls atténuer de manière adéquate les menaces découlant de l’exécution spéculative.

Le côté positif ici est qu’il est difficile d’exploiter les vulnérabilités de Spectre. Pour se protéger de la nouvelle attaque, les chercheurs proposent de vider le cache micro-ops, une technique qui compense les avantages de performance obtenus en utilisant le cache en premier lieu, exploiter les compteurs de performance pour détecter les anomalies dans le cache micro-op et partitionner l’opération -cache en fonction du niveau de privilège attribué au code et empêche le code non autorisé d’obtenir des privilèges plus élevés.

“Le cache micro-op en tant que canal secondaire a plusieurs implications dangereuses”, ont déclaré les chercheurs. “Premièrement, il contourne toutes les techniques qui atténuent les caches en tant que canaux secondaires. Deuxièmement, ces attaques ne sont détectées par aucun profil d’attaque ou de logiciel malveillant existant. Troisièmement, parce que le cache micro-op se trouve à l’avant du pipeline, bien avant l’exécution, certains Les défenses qui atténuent Spectre et d’autres attaques d’exécution transitoire en limitant les mises à jour spéculatives du cache restent vulnérables aux attaques micro-op cache. “



Leave a Reply