Sulmi TSA, që çon në rrjedhjen e informacionit nga strukturat mikroarkitekturore të CPU AMD

Kompania AMD zbulo informacionin pĂ«r njĂ« klasĂ« tĂ« re tĂ« sulmeve mikroarkitekturore ndaj procesorĂ«ve tĂ« saj — TSA (Sulmi i Planifikuesit Kalimtar). Ky sulm i lejon njĂ« sulmuesi tĂ« anashkalojĂ« mekanizmat e izolimit tĂ« CPU dhe tĂ« pĂ«rcaktojĂ« tĂ« dhĂ«nat qĂ« pĂ«rpunohen nĂ« kontekste tĂ« tjera, pĂ«r shembull, tĂ« identifikojĂ« informacionin qĂ« pĂ«rpunohen nĂ« nivelin e bĂ«rthamĂ«s nga hapĂ«sira e pĂ«rdoruesit, ose tĂ« zbulojĂ« tĂ« dhĂ«nat qĂ« pĂ«rdoren nĂ« njĂ« sistem mik nga njĂ« sistem mik tjetĂ«r.

Dobësitë u identifikuan gjatë zhvillimit të një instrumenti, të krijuar nga hulumtuesit e Microsoft dhe Shkollës së Lartë të Teknologjisë të Cyrihut, për testimin e stresit të izolimit mikroarkitektural midis zonave të ndryshme të ndarjes së aksesit, si bërthama, makinat virtuale dhe proceset.

Metoda e sulmit bazohet nĂ« varĂ«sinĂ« e kohĂ«s sĂ« ekzekutimit tĂ« disa instrukcioneve nga gjendja e strukturave mikroarkitekturore. Kur procesori pret pĂ«r njĂ« pĂ«rfundim tĂ« shpejtĂ« tĂ« njĂ« instrukcioni pĂ«r leximin e tĂ« dhĂ«nave nga memoria (pĂ«r shembull, duke supozuar se tĂ« dhĂ«nat ndodhen nĂ« memorie tĂ« shpejtĂ« L1), por dĂ«shton tĂ« marrĂ« me sukses tĂ« dhĂ«nat, ndodh njĂ« gjendje e ‘pĂ«rfundimit tĂ« rremë’ tĂ« instrukcionit. NĂ« kĂ«tĂ« rast, procesori, para se tĂ« pĂ«rcaktojĂ« kĂ«tĂ« gjendje, mund tĂ« planifikojĂ« ekzekutimin spekulativ tĂ« operacioneve tĂ« tjera, tĂ« varura nga rezultati i ekzekutimit tĂ« instrukcionit pĂ«r ngarkesĂ«n nga memoria.

Pasi ngarkesa nuk pĂ«rfundoi, tĂ« dhĂ«nat e lidhura me tĂ« njihet si tĂ« pavlefshme nga procesori, dhe operacioni i ngarkesĂ«s pĂ«rsĂ«ritet mĂ« vonĂ«. Operacionet e varura gjithashtu ekzekutohen pĂ«rsĂ«ri pas gatishmĂ«risĂ« sĂ« tĂ« dhĂ«nave tĂ« sakta. NĂ« kĂ«tĂ« rast, shkarkimi i konviktit (pipeline flush) pas ekzekutimit tĂ« instrukcionit, pĂ«r tĂ« cilin Ă«shtĂ« regjistruar gjendja e ‘pĂ«rfundimit tĂ« rremë’, nuk kryhet, dhe tĂ« dhĂ«nat e pasakta mund tĂ« redaktohen nĂ« operacionet e varura.

Ekzekutimi i operacioneve të tilla nuk ndryshon gjendjen e caches dhe TLB (Translation Lookaside Buffer), dmth. të dhënat nuk mund të restaurohen përmes metodave tradicionale të përcaktimit të gjendjes së caches. Por këto të dhëna ndikojnë në kohën e ekzekutimit të instrukcioneve të tjera. Analiza e kohës së ekzekutimit mund të përdoret si një burim informacioni për rrjedhjet nga strukturat mikroarkitekturore, që mbeten pas ekzekutimit spekulativ të operacioneve të tjera.

Në varësi të burimit të të dhënave mbetëse, janë identifikuar dy dobësi:

  • CVE-2024-36350 (TSA-SQ — TSA Store Queue) — njĂ« rrjedhje nga buferi i memoriës për operacionet e shkruajtes, e cila lejon të caktuara rezultatet e ekzekutimit te instrukcioneve të shkruara në memory.
  • CVE-2024-36357 (TSA-L1 — TSA L1 Data Cache) — njĂ« rrjedhje pĂ«rmes cache L1D.

Vulnerabilitetet shfaqen në familjen e procesorëve AMD (Fam19h) të bazuar në mikroarkitekturën Zen 3 dhe Zen 4. Shembujt përfshijnë seri 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.

Ndryshimet e nevojshme për bllokimin e vulnerabiliteteve janë përfshirë në përditësimin e mikroarkitekturës dhe firmware PI (Platform Initialization) të dhëna për prodhuesit OEM. Patch-e për mbrojtjen nga vulnerabilitetet janë dërguar për t'u përfshirë në kernelin Linux (për ndaljen e mbrojtjes, e cila ndikon negativisht në performancë, është parashikuar një opsion në komandën e kernelit "tsa=off"). Një riparim është shtuar gjithashtu në hipervizorin Xen. Për të bllokuar vulnerabilitetin, kërkohet përditësimi i mikroarkitekturës dhe aktivizimi i modalitetit të mbrojtjes në nivelin e kernelit ose hipervizorit.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster