Ouvrir le menu principal

MacGeneration

Recherche

GoFetch, une nouvelle faille matérielle qui touche les puces Apple Silicon

Pierre Dandumont

jeudi 21 mars 2024 à 21:58 • 94

Matériel

Une nouvelle attaque vient d'être présentée par des chercheurs, GoFetch. Elle a deux particularités : elle vise les puces Apple et ne peut pas être corrigée facilement, car elle se base sur des fonctions matérielles des processeurs. Les solutions pour s'en protéger impliquent donc de grosses pertes de performances, car la faille ne peut pas être comblée directement.

Le logo de GoFetch.

GoFetch, donc, se base sur une des fonctions des puces M d'Apple, le DMP (Data Memory-dependent Prefetcher). Nous allons essayer de faire simple : les processeurs, depuis de nombreuses années, tentent de deviner ce qu'un programme va exécuter. L'idée (efficace) consiste à analyser les flux pour déterminer les prochaines instructions et les prochaines données à charger. Le cas du prefetch classique est assez simple : les algorithmes essayent de charger les données en mémoire cache (très rapide) avant que le programme en ait besoin et pendant que le CPU effectue une autre tâche. S'ils ont raison, les accès sont plus rapides, tout comme le programme.

Dans un CPU classique, les algorithmes travaillent sur des adresses, qui déterminent la position des données dans la mémoire, sans avoir aucune idée du contenu des données. Avec le DMP, présent aussi dans les derniers CPU Intel, les algorithmes analysent les données pour trouver ce qu'ils pensent être des pointeurs. De façon très simplifiée, un pointeur est l'équivalent d'une adresse stockée dans les données, et donc si l'algorithme en trouve un, il peut précharger les données qu'il pointe pour accélérer les chargements.

Un problème de détection

Le principe de la faille, c'est que l'algorithme ne peut pas déterminer s'il s'agit réellement d'un pointeur, mais seulement si les données ressemblent à un pointeur. Le principe de l'attaque consiste donc à créer des données qui ressemblent à des pointeurs pour tenter de récupérer des données qui ne devraient pas se trouver dans la mémoire cache. L'ensemble est compliqué — vous pouvez aller lire le papier dédié si le cœur vous en dit — mais les chercheurs indiquent que leur application peut récupérer une clé RSA-2048 en moins d'une heure avec un programme qui n'a pas besoin de droits particuliers. Il y a quelques limites pratiques tout de même : l'application attaquée (qui peut par exemple être OpenSSL)doit être exécutée sur le même cluster dans une puce M, c'est-à-dire un groupe de cœurs au niveau de la puce. L'attaque est efficace contre différents types de chiffrements, mais le temps nécessaire peut être plus élevé.

L'attaque en action.

Pour les chercheurs, les solutions sont peu nombreuses. La première consiste à n'effectuer les calculs cryptographiques que sur les cœurs basse consommation (cœurs E). Ils ne bénéficient pas du DMP mais sont malheureusement plus lents. La seconde consiste à adapter les programmes pour éviter les fuites de données, mais ils indiquent que la perte de performances peut être élevée, en fonction des algorithmes. Enfin, il est possible de désactiver le DMP sur les puces M3 pour un programme précis, mais les chercheurs n'indiquent pas les éventuelles pertes de performances.

Cette faille montre surtout que même avec un matériel parfaitement maîtrisé, il reste possible d'avoir des problèmes de sécurité. Et dans le cas précis, il est visiblement impossible pour Apple de corriger la faille dans les puces M1 et M2. Enfin, notons qu'Apple a été prévenu de la faille en décembre 2023.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Les procès antitrust contre les GAFAM se poursuivent aux USA, malgré les changements de présidence

24/04/2025 à 21:30

• 11


Prise en main de Supercharge, l’app à tout faire qui rend bien des services sur le Mac

24/04/2025 à 20:30

• 11


TSMC annonce la gravure en 1.4 nm, quand la Russie espère atteindre les 28 nm en 2030

24/04/2025 à 20:20

• 24


Données personnelles : comment Incogni supprime ce que les autres ne peuvent pas 📍

24/04/2025 à 18:17

• 0


Amazon va fêter ses 25 ans en France avec une semaine de promos du 30 avril au 6 mai

24/04/2025 à 17:30

• 15


La Maison-Blanche qualifie « d'extorsion économique » l’amende de l’UE infligée à Meta et Apple

24/04/2025 à 16:09

• 146


Refurb : des Mac mini M4 de retour entre 590 et 3 700 €

24/04/2025 à 15:10

• 11


Choisissez la couleur du tee-shirt des 25 ans de MacGeneration !

24/04/2025 à 14:45

• 43


Vous pouvez récupérer le pin’s créé pour les dix ans de l’Apple Watch en Apple Store 🆕

24/04/2025 à 14:22

• 66


La MX Creative Console de Logitech prend désormais en charge Final Cut Pro et Affinity Photo

24/04/2025 à 13:00

• 2


Le futur écran 5K et 27 pouces de ViewSonic arrivera en juin pour 1 139 €

24/04/2025 à 12:00

• 11


Refurb : le retour du MacBook Air M1 à 709 € face aux M2 et M4 en promotion

24/04/2025 à 11:10

• 7


Adobe MAX Londres : des nouveautés tout feu, tout Firefly pour le Creative Cloud

24/04/2025 à 11:00

• 4


DMA : Bruxelles inflige une amende de 500 millions à Apple et de 200 millions à Meta 🆕

24/04/2025 à 08:15

• 141


Perplexity met une méchante claque à Apple en montrant ce qu’ils pourraient faire de Siri

24/04/2025 à 08:15

• 112


Une très involontaire journée portes ouvertes à l'Apple Store d'Amsterdam vu dans iHostage

24/04/2025 à 07:57

• 18