La faille "GoFetch" dans les puces Apple de la série M peut entraîner la fuite de clés de chiffrement cachées
Un groupe de chercheurs universitaires a révélé une vulnérabilité dans les puces Apple de la série M qui peut être exploitée pour accéder à des clés cryptographiques. Baptisée "GoFetch", cette vulnérabilité peut être utilisée par un pirate pour accéder aux fichiers cryptés d'un utilisateur.
Sur le site web de présentation de GoFetch, les chercheurs expliquent que GoFetch cible le préfiltre dépendant de la mémoire de données (DMP) des puces de la série M, qui prédit les adresses mémoire que le code en cours d'exécution utilisera, afin d'optimiser les performances. Cependant, l'implémentation DMP d'Apple confond parfois le contenu réel de la mémoire avec le pointeur utilisé pour prédire l'adresse mémoire, ce qui "viole explicitement une exigence du paradigme de programmation à temps constant, qui interdit de mélanger les données et les schémas d'accès à la mémoire". Un attaquant peut exploiter cette confusion pour deviner correctement des bits d'une clé cryptographique jusqu'à ce que la clé entière soit découverte.
Un attaquant utilisant GoFetch n'a pas besoin d'un accès root au Mac ; le seul accès nécessaire est l'accès habituel d'un utilisateur. Les chercheurs ont pu effectuer GoFetch sur des Mac M1, M2 et M3 et ont fait part de leurs découvertes à Apple en décembre dernier. Des recherches sur les Mac à base d'Intel sont prévues à l'avenir.
Les chercheurs de GoFetch fournissent des détails détaillés dans un document GoFetch disponible en ligne, qui recommande également des moyens pour Apple de mettre en œuvre un correctif basé sur l'architecture actuelle de la puce - mais tout correctif affectera les performances de la puce lors du traitement du code cryptographique. La solution la plus "radicale" consisterait à désactiver la DMP, tandis qu'une autre possibilité consisterait à exécuter le code cryptographique sur les cœurs d'efficacité de la puce, car ces cœurs ne disposent pas de la fonctionnalité DMP. D'autres suggestions incluent l'aveuglement cryptographique et la mise en œuvre de défenses ad hoc qui interfèrent avec des points d'attaque spécifiques. À long terme, les chercheurs recommandent à Apple de trouver des moyens pour macOS de mieux gérer l'utilisation de la DMP et de "désactiver sélectivement la DMP lors de l'exécution d'applications critiques pour la sécurité".
Comment se protéger de GoFetch
Les vulnérabilités DMP ne sont pas nouvelles - en 2022, des chercheurs universitaires ont révélé Augury, la première introduction à l'exploit DMP qui, à l'époque, ne représentait pas un risque sérieux. Cependant, il semble qu'avec GoFetch, Apple n'ait pas encore résolu le problème, peut-être en raison des problèmes de performance.
Les attaques basées sur les DMP ne sont pas courantes, et elles nécessitent qu'un pirate ait un accès physique à un Mac. La meilleure façon de prévenir une attaque consiste donc à sécuriser votre compte utilisateur sur votre Mac à l'aide d'un mot de passe fort et à ne pas laisser des personnes que vous ne connaissez pas utiliser votre Mac. Pour plus d'informations sur la sécurité des Mac, lisez "Comment savoir si votre Mac a été piraté" et "Quel est le niveau de sécurité de votre Mac ?" Pensez également à installer un programme antivirus sur votre Mac.