L'attaque TSA entraĂźnant une fuite d'informations provenant des structures microarchitecturales des CPU AMD

La sociĂ©tĂ© AMD a rĂ©vĂ©lĂ© des informations sur une nouvelle classe d'attaques microarchitecturales ciblant ses processeurs — TSA (Transient Scheduler Attack). Cette attaque permet Ă  un attaquant de contourner les mĂ©canismes d'isolation du CPU et de dĂ©terminer les donnĂ©es traitĂ©es dans d'autres contextes, par exemple, de rĂ©cupĂ©rer des informations traitĂ©es au niveau du noyau depuis l'espace utilisateur, ou de connaĂźtre des donnĂ©es utilisĂ©es dans une autre machine virtuelle depuis une machine virtuelle invitĂ©.

Les vulnĂ©rabilitĂ©s ont Ă©tĂ© identifiĂ©es lors du dĂ©veloppement d'un outil créé par des chercheurs de Microsoft et de l'École polytechnique fĂ©dĂ©rale de Zurich pour le stress-test de l'isolation microarchitecturale entre diffĂ©rentes zones de compartimentation, telles que le noyau, les machines virtuelles et les processus.

La mĂ©thode d'attaque repose sur la dĂ©pendance du temps d'exĂ©cution de certaines instructions par rapport Ă  l'Ă©tat des structures microarchitecturales. Lorsque le processeur attend que l'instruction de lecture des donnĂ©es depuis la mĂ©moire se termine rapidement (par exemple, en supposant que les donnĂ©es sont dans le cache L1), mais ne parvient pas Ă  rĂ©cupĂ©rer les donnĂ©es avec succĂšs, un Ă©tat de « fausse complĂ©tion » (false completion) de l'instruction se produit. À ce stade, le processeur peut dĂ©jĂ  planifier l'exĂ©cution spĂ©culative d'autres opĂ©rations dĂ©pendantes du rĂ©sultat de l'instruction de chargement depuis la mĂ©moire.

Étant donnĂ© que le chargement ne s'est pas terminĂ©, les donnĂ©es qui lui sont associĂ©es sont considĂ©rĂ©es comme invalides par le processeur, et l'opĂ©ration de chargement est ensuite rĂ©pĂ©tĂ©e. Les opĂ©rations dĂ©pendantes sont Ă©galement rĂ©pĂ©tĂ©es une fois que les donnĂ©es correctes sont prĂȘtes. Dans ce processus, le vidage de pipeline (pipeline flush) aprĂšs l'exĂ©cution de l'instruction pour laquelle un Ă©tat de « fausse complĂ©tion » a Ă©tĂ© enregistrĂ© n'est pas effectuĂ©, et des donnĂ©es incorrectes peuvent ĂȘtre redirigĂ©es vers des opĂ©rations dĂ©pendantes.

L'exĂ©cution de telles opĂ©rations ne modifie pas l'Ă©tat du cache et du TLB (Translation Lookaside Buffer), c'est-Ă -dire que les donnĂ©es ne peuvent pas ĂȘtre rĂ©cupĂ©rĂ©es par des mĂ©thodes traditionnelles de dĂ©termination de l'Ă©tat du cache. Cependant, ces donnĂ©es influent sur le temps d'exĂ©cution d'autres instructions. L'analyse du temps d'exĂ©cution peut servir de source de fuite d'informations des structures microarchitecturales, rĂ©sultant de l'exĂ©cution spĂ©culative d'autres opĂ©rations.

Selon la source d'extraction des données résiduelles, deux vulnérabilités ont été identifiées :

  • CVE-2024-36350 (TSA-SQ — File d'attente de stockage TSA) — fuite du tampon d'opĂ©rations d'Ă©criture (File d'attente de stockage), permettant de dĂ©terminer le rĂ©sultat des instructions d'Ă©criture en mĂ©moire.
  • CVE-2024-36357 (TSA-L1 — Cache de donnĂ©es L1 TSA) — fuite via le cache L1D.

Les vulnérabilités se manifestent dans la famille de processeurs AMD (Fam19h) basée sur les microarchitectures Zen 3 et Zen 4. Par exemple, le problÚme est présent dans les séries de CPU AMD Ryzen 5000/6000/7000/8000, AMD EPYC Milan/Milan-X/Genoa/Genoa-X/Bergamo/Siena, AMD Instinct MI300A, AMD Ryzen Threadripper PRO 7000 WX, AMD EPYC Embedded 7003/8004/9004/97X4, AMD Ryzen Embedded 5000/7000/V3000.

Les modifications nécessaires pour bloquer les vulnérabilités sont incluses dans la mise à jour de décembre du microcode et des firmware PI (Platform Initialization), fournis aux fabricants OEM. Les correctifs de protection contre la vulnérabilité ont été transmis pour intégration dans le noyau Linux (une option de ligne de commande du noyau « tsa=off » est prévue pour désactiver la protection, qui affecte négativement les performances). Le correctif a également été ajouté à l'hyperviseur Xen. Pour bloquer la vulnérabilité, une mise à jour du microcode et l'activation du mode de protection au niveau du noyau ou de l'hyperviseur sont nécessaires.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster