Ils ont trouvé une vulnérabilité d'exécution spéculative qui affecte AMD

Le projet récemment Grsecurity fait connaître par une publication détails et démo une méthode d'attaque pour une nouvelle vulnérabilité (déjà répertorié comme CVE-2021-26341) dans les processeurs AMD liés à l'exécution d'instructions spéculatives après des opérations de saut en avant inconditionnelles.

Vulnérabilité permet au processeur de traiter de manière spéculative l'instruction immédiatement après l'instruction de saut (SLS) en mémoire pendant l'exécution spéculative. Dans le même temps, une telle optimisation fonctionne non seulement pour les opérateurs de saut conditionnel, mais également pour les instructions qui impliquent un saut inconditionnel direct, telles que JMP, RET et CALL.

Les instructions de branchement inconditionnelles peuvent être suivies de données arbitraires qui ne sont pas destinées à être exécutées. Après avoir déterminé que la branche n'implique pas l'exécution de l'instruction suivante, le processeur annule simplement l'état et ignore l'exécution spéculative, mais la trace d'exécution des instructions reste dans le cache général et est disponible pour analyse à l'aide de méthodes de récupération par canal latéral.

AMD fournit une mise à jour pour une atténuation recommandée, l'atténuation G-5, dans le livre blanc « Techniques logicielles pour la gestion de la spéculation dans les processeurs AMD ». L'atténuation G-5 aide à résoudre les vulnérabilités potentielles associées au comportement spéculatif des instructions de branche.

Les processeurs AMD peuvent exécuter de manière transitoire des instructions suivant une branche avant inconditionnelle, ce qui peut entraîner une activité de cache

Comme pour l'exploitation du Spectre-v1, une attaque nécessite la présence de certaines séquences d'instructions (gadgets) dans le noyau, ce qui conduit à une exécution spéculative.

Dans ce cas, bloquer une vulnérabilité revient à identifier de tels dispositifs dans le code et à leur ajouter des instructions supplémentaires qui bloquent l'exécution spéculative. Des conditions d'exécution spéculative peuvent également être créées à l'aide de programmes non privilégiés s'exécutant sur la machine virtuelle eBPF.

Cette enquête a abouti à la découverte d'une nouvelle vulnérabilité, CVE-2021-26341 [1] , dont nous parlerons en détail dans cet article. Comme d'habitude, nous nous concentrerons sur les aspects techniques de la vulnérabilité, les atténuations suggérées par AMD et les aspects d'exploitation.

Pour empêcher la création d'appareils à l'aide d'eBPF, il est recommandé de désactiver l'accès non privilégié à eBPF dans le système ("sysctl -w kernel.unprivileged_bpf_disabled=1").

La vulnérabilité affecte les processeurs basés sur la microarchitecture Zen1 et Zen2 :

Bureau

  • Processeur AMD Athlon™ X4
  • Processeur AMD Ryzen™ Threadripper™ PRO
  • Processeurs AMD Ryzen™ Threadripper™ de XNUMXe génération
  • Processeurs AMD Ryzen™ Threadripper™ de XNUMXe génération
  • APU AMD série A de XNUMXe génération
  • Processeurs pour PC de bureau AMD Ryzen™ série 2000
  • Processeurs pour PC de bureau AMD Ryzen™ série 3000
  • Processeurs pour PC de bureau AMD Ryzen™ série 4000 avec carte graphique Radeon™

Mobile

  • Processeur mobile AMD Ryzen™ série 2000
  • Processeurs mobiles AMD Athlon™ série 3000 avec carte graphique Radeon™
  • Processeurs mobiles AMD Ryzen™ série 3000 ou processeurs mobiles AMD Ryzen™ de XNUMXe génération avec carte graphique Radeon™
  • Processeurs mobiles AMD Ryzen™ série 4000 avec carte graphique Radeon™
  • Processeurs mobiles AMD Ryzen™ série 5000 avec carte graphique Radeon™

Chromebook

  • Processeurs mobiles AMD Athlon™ avec graphiques Radeon™

Serveur

  • Processeurs AMD EPYC™ de première génération
  • Processeurs AMD EPYC™ de XNUMXe génération

Il est mentionné que si l'attaque réussit, la vulnérabilité permet de déterminer le contenu de zones de mémoire arbitraires.

En raison de cette vulnérabilité, il peut être possible d'identifier des constructions de code bénignes qui forment des périphériques SLS limités mais potentiellement exploitables sur les processeurs concernés. Comme le montre l'exemple eBPF, il est également possible d'exploiter la vulnérabilité avec des dispositifs auto-injectés fabriqués à la main. La méthode présentée peut être utilisée, par exemple, pour casser l'atténuation KASLR du noyau Linux.

Par exemple, des chercheurs ont préparé un exploit qui vous permet de déterminer la disposition de l'adresse et de contourner le mécanisme de protection KASLR (kernel memory randomization) en exécutant du code sans privilèges dans le sous-système du noyau eBPF, en plus d'autres scénarios d'attaque qui pourraient fuir le le contenu de la mémoire du noyau n'est pas exclu.

Enfin si ça t'intéresse d'en savoir un peu plus, vous pouvez vérifier les détails dans le lien suivant.


Le contenu de l'article adhère à nos principes de éthique éditoriale. Pour signaler une erreur, cliquez sur c'est par ici !.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.