← Derniers articles
💻 computer science

SLAC: Access-Driven CPU-to-GPU Side-channel Attacks via System-Level Cache on Apple Silicon

Ce document présente SLAC, une nouvelle attaque par canal auxiliaire à grain fin et pilotée par l'accès sur Apple Silicon qui exploite les empreintes de cache partagées au niveau du système pour permettre à des processus CPU non privilégiés de surveiller les charges de travail GPU, réalisant des violations de confidentialité de haute précision contre les réseaux de neurones sur graphes et les grands modèles de langage.

Auteurs originaux : Tianhong Xu, Saion K. Roy, Ruyi Ding, Aidong Adam Ding, Yunsi Fei

Publié 2026-08-11
📖 7 min de lecture🧠 Analyse approfondie

Auteurs originaux : Tianhong Xu, Saion K. Roy, Ruyi Ding, Aidong Adam Ding, Yunsi Fei

Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète

Imaginez que vous et un ami partagiez une seule bibliothèque à haute vitesse au milieu d'une ville trépidante. Vous avez tous les deux vos propres bureaux privés où vous gardez vos livres préférés, mais quand vous avez besoin de quelque chose que vous n'avez pas, vous courez tous les deux à la bibliothèque partagée pour le saisir. Cette bibliothèque est le « Cache au niveau du système » (SLC), un emplacement de mémoire super rapide partagé par le cerveau de l'ordinateur (le CPU) et sa puissance graphique (le GPU). Dans le monde de l'informatique moderne, ces deux parties vivent sur la même puce, comme des colocataires dans un petit appartement, et elles doivent partager cette bibliothèque pour travailler rapidement.

Voici la partie délicate : même si vous ne pouvez pas voir ce que votre ami lit sur son bureau privé, vous pouvez surveiller la bibliothèque. Si votre ami saisit un livre, celui-ci disparaît de l'étagère de la bibliothèque pendant une fraction de seconde. S'il ne le saisit pas, le livre reste exactement là où il était. En mesurant précisément le temps qu'il faut pour vérifier si un livre est sur l'étagère, un observateur furtif peut découvrir ce que votre ami est en train de lire, sans même voir le livre lui-même. C'est ce qu'on appelle une « attaque par canal auxiliaire » (side-channel attack). C'est comme deviner une recette secrète en écoutant le cliquetis des casseroles dans la cuisine voisine. Alors que nous comptons de plus en plus sur les ordinateurs pour gérer nos photos privées, nos dossiers médicaux et nos conversations avec l'IA, comprendre si ces « bruits de cuisine » peuvent laisser fuiter des secrets est crucial pour la sécurité de nos vies numériques.


L'article : SLAC – L'attaque du « Surveillant de la Bibliothèque »

Dans cet article, une équipe de chercheurs de l'Université Northeastern et de l'Université d'État de Louisiane a décidé de voir s'ils pouvaient mener un type très spécifique d'espionnage par « bruit de cuisine » sur les nouvelles puces Apple Silicon (comme la M1). Ils voulaient savoir : Un programme informatique ordinaire (s'exécutant sur le CPU) peut-il espionner un programme graphique secret (s'exécutant sur le GPU) simplement en surveillant la bibliothèque partagée ?

Auparavant, on savait qu'on pouvait espionner dans le sens inverse (le GPU espionnant le CPU), ou que l'on pouvait obtenir une vue très floue et à basse résolution de ce que faisait le GPU (comme voir que la bibliothèque est « occupée », mais sans savoir quels livres ont été touchés). Mais personne n'avait trouvé comment obtenir une vue nette, en haute définition, de l'activité du GPU depuis le côté CPU sur les puces Apple. Les chercheurs appellent leur nouvelle méthode SLAC.

Comment ils ont déchiffré le code

Pour y parvenir, l'équipe a dû résoudre deux énigmes massives au préalable.

  1. La carte secrète : La puce Apple M1 utilise une manière très étrange d'organiser sa bibliothèque. Au lieu de ranger les livres dans l'ordre (Livre 1, Livre 2, Livre 3), elle utilise une formule mathématique complexe et secrète (une fonction de hachage) pour décider de l'étagère où va un livre. C'est comme un bibliothécaire qui mélange les livres selon un code secret. Les chercheurs ont dû rétro-concevoir ce code. Ils ont passé du temps à tester des millions d'adresses pour comprendre exactement comment la puce décide de l'emplacement des données. Ils ont découvert que la puce utilise un index de 12 bits, ce qui signifie qu'il existe 4 096 « étagères » (ensembles de cache) différentes dans la bibliothèque.
  2. La règle de l'« exclusivité » : Ils ont également découvert une règle étrange sur la façon dont le CPU et le GPU utilisent la bibliothèque. Lorsque le CPU consulte un livre, il en garde une copie sur son propre bureau et ne le met dans la bibliothèque partagée que lorsqu'il vient à manquer d'espace. Mais lorsque le GPU consulte un livre, il le place directement dans la bibliothèque partagée. Ce comportement « exclusif » signifiaait que les chercheurs devaient être astucieux. Ils ne pouvaient pas simplement remplir la bibliothèque depuis le côté CPU facilement ; ils devaient d'abord remplir le bureau privé du CPU, puis forcer le CPU à expulser les anciens livres vers la bibliothèque partagée pour préparer le terrain pour l'attaque.

L'attaque : CPrime et GPrime

Une fois la carte et les règles comprises, ils ont construit deux méthodes d'espionnage, qu'ils appellent CPrime+CProbe et GPrime+CProbe.

  • CPrime (L'espion CPU) : Cette méthode n'utilise que le CPU. L'attaquant remplit la bibliothèque partagée avec ses propres livres « leurres ». Ensuite, il laisse la victime (le GPU) exécuter son programme secret. Si la victime touche un livre que l'attaquant a placé là, le livre de l'attaquant est expulsé. Lorsque l'attaquant vérifie à nouveau la bibliothèque, il constate un délai (un « défaut de cache » ou miss) et sait : « Aha ! Le GPU a touché cette étagère spécifique ! »
    • Le bémol : C'est lent car le CPU doit fournir beaucoup d'efforts pour remplir la bibliothèque. Il faut environ 7 millisecondes pour préparer le piège.
  • GPrime (L'espion GPU) : C'est la version survoltée. Si l'attaquant peut également exécuter du code sur le GPU (ce qui est autorisé dans de nombreux scénarios), il peut utiliser la vitesse massive du GPU pour remplir la bibliothèque en un éclair.
    • Le résultat : Cette configuration est 6,4 fois plus rapide que la version uniquement CPU, ne prenant que 0,7 milliseconde.

Ce qu'ils ont trouvé : Espionner des secrets

Les chercheurs ne se sont pas contentés de préparer le piège ; ils l'ont utilisé pour voler de vrais secrets. Ils ont testé deux scénarios :

  1. Vol de cartes de réseaux sociaux (GNNs) : Ils ont attaqué un Réseau de Neurones sur Graphes (GNN), un type d'IA utilisé pour analyser les réseaux sociaux ou les données médicales. Le « secret » ici est les connexions (arêtes) entre les personnes ou les nœuds. En observant quelles étagères de la bibliothèque le GPU touchait, l'attaquant pouvait reconstruire la carte.

    • Le score : Ils ont réussi à récupérer 90 % des connexions (arêtes) correctement sur cinq ensembles de données différents. Avec la méthode plus rapide basée sur le GPU, ils se sont rapprochés de 99,9 % de précision sur certaines cartes.
  2. Lire dans vos pensées (LLMs) : Ils ont attaqué des modèles de langage de grande taille (LLM, comme ceux qui alimentent les chatbots). Ces modèles consultent un dictionnaire géant (table d'incorporation ou embedding table) pour comprendre ce que vous tapez et ce qu'ils doivent répondre.

    • Espionnage de l'entrée : Ils ont tenté de deviner les mots-clés que vous avez tapés (comme un nom de maladie ou un symbole boursier). Ils ont récupéré les mots-clés d'entrée avec une précision allant jusqu'à 94,8 %.
    • Espionnage de la sortie : Ils ont tenté de deviner ce que l'IA vous répondait. Ils ont récupéré les mots de la réponse de l'IA avec une précision allant jusqu'à 88,9 %.

Le verdict

L'article conclut que la bibliothèque partagée sur les puces Apple Silicon est un « compagnon bavard ». Même si le CPU et le GPU sont censés être séparés, la façon dont ils partagent cette mémoire rapide crée un canal caché qui permet à un programme ordinaire, non privilégié, d'espionner des charges de travail graphiques sensibles avec une précision effrayante.

Les chercheurs ont mesuré ces résultats sur du matériel réel (puces Apple M1) et ont constaté que les attaques fonctionnent de manière fiable, et pas seulement en théorie. Ils suggèrent que les futures conceptions informatiques doivent être plus prudentes quant à la manière dont elles partagent la mémoire, sinon nos conversations et données privées avec l'IA pourraient être interceptées simplement en écoutant le « cliquetis des casseroles » dans la bibliothèque partagée.

Noyé(e) sous les articles dans votre domaine ?

Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.

Essayer Digest →