Intel prozesadoreetan Zombieload erasoaren aldaera berri bat identifikatu da

Grazeko Unibertsitate Teknikoko (Austria) ikertzaileak estali gabe hirugarrenen kanalen bidez erasotzeko metodo berri bati buruzko informazioa Zombie Load 2.0 (CVE-2019-11135), beste prozesu batzuetatik, sistema eragiletik, makina birtualetatik eta babestutako enklabeetatik (TEE, Trusted Execution Environment) informazio konfidentziala ateratzeko aukera ematen duena. Arazoak Intel prozesadoreei bakarrik eragiten die. Arazoa blokeatzeko osagaiak proposatu atzokoan mikrokodeen eguneratzea.

Arazoa MDS (Microarchitectural Data Sampling) klaseari dagokio eta bertsio modernizatu bat da. publiko egina maiatzean ZombieLoad erasoak. ZombieLoad 2.0, beste MDS eraso batzuk bezala, albo-kanalen analisi-tekniken aplikazioan oinarritzen da mikroarkitektura-egituretako datuei (adibidez, Line Fill Buffer eta Store Buffer), prozesuan erabilitako datuak aldi baterako gordetzen dituztenak. .

Zombieload erasoaren aldaera berria oinarritua Eragiketa asinkronoa eteteko mekanismoaren (TAA, TSX Asynchronous Abort) funtzionamenduan gertatzen den ihesari buruzkoa, TSX (Transactional Synchronization Extensions) luzapenean inplementatutakoa, transakzio-memoria lantzeko tresnak eskaintzen dituena, eta horrek errendimendua areagotzea ahalbidetzen du. hari anitzeko aplikazioak alferrikako sinkronizazio eragiketak dinamikoki ezabatuz (onartu edo bertan behera utzi daitezkeen transakzio atomikoak onartzen dira). Eten egiten bada, transakzio-memoria eskualdean egindako eragiketak atzera egiten dira.

Transakzio abortua modu asinkronoan gertatzen da, eta, momentu horretan, beste hari batzuk atzi ditzakete cachera, baztertutako transakzio-memoria eskualdean ere erabiltzen dena. Transakzio asinkronoa eteten hasten denetik benetako amaitzen den bitartean, prozesadoreak, eragiketa baten exekuzio espekulatiboan zehar, barneko buffer mikroarkitekturaletako datuak irakurri eta eragiketa espekulatibora transferi ditzakeen egoerak sor daitezke. Orduan gatazka detektatuko da eta eragiketa espekulatiboa baztertuko da, baina datuak cachean geratuko dira eta alboko kanaleko cachea berreskuratzeko teknikak erabiliz berreskuratu ahal izango dira.

Erasoa TSX transakzioak ireki eta etenaldi asinkronorako baldintzak sortzean datza, eta horietan PUZaren nukleo berean egindako memoria irakurtzeko eragiketetako datuekin espekulatiboki betetako barne bufferen edukia isurtzeko baldintzak sortzen dira. Leak uneko PUZaren nukleo fisikora mugatzen da (erasotzailearen kodea exekutatzen ari den), baina Hyper-Threading moduan mikroarkitektura-buffer-ak hari ezberdinen artean partekatzen direnez, posible da PUZaren beste hari batzuetan egindako memoria-eragiketak ihes egitea.

Erasoa menpean Intel Core prozesadoreen zortzigarren, bederatzigarren eta hamargarren belaunaldietako zenbait modelo, baita Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W eta bigarren belaunaldiko Intel Xeon Scalable ere. Apirilean aurkeztutako Cascade Lake mikroarkitekturan oinarritutako Intel prozesadore berriak, hasieran RIDL eta Fallout erasoak jasan ez zituztenak, erasoak jasan ditzakete. Zombieload 2.0-z gain, ikertzaileek aurretik proposatutako MDS erasoen aurkako babes-metodoak saihesteko aukera ere identifikatu zuten, VERW instrukzioaren erabileran oinarritutako mikroarkitektura-bufferen edukia garbitzeko nukleotik erabiltzailearen espaziora itzultzean edo kontrola transferitzean. gonbidatuen sistema.

Intel-en txostenak dioenez, karga heterogeneoa duten sistemetan, eraso bat egiteko gaitasuna zaila da, egitura mikroarkitektonikoen ihesak sistemako jarduera guztia estaltzen duelako eta erasotzaileak ezin duelako erauzitako datuen iturrian eragin, hau da. filtrazio baten ondorioz sortzen den informazioa baino ezin da pilatu eta datu horien artean informazio erabilgarria identifikatzen saiatu, memoria-helbide zehatzei lotutako datuak nahita atzemateko gaitasunik gabe. Hala ere, ikertzaileek argitaratu zuten ustiatu prototipoa, Linux eta Windows-en exekutatzen dena, eta root erabiltzailearen pasahitzaren hash zehazteko eraso bat erabiltzeko gaitasuna erakutsi zuen.
Agian sistema gonbidatu baten erasoa egitea, beste sistema gonbidatuen, ostalari-ingurunearen, hipervisorearen eta Intel SGX enklabeen operazioetan agertzen diren datuak pilatzeko.

Ahultasuna blokeatzeko konponketak barne Linux kernel kode-basean sartu eta argitalpenetan sartuta 5.3.11, 4.19.84, 4.14.154, 4.9.201 eta 4.4.201. Nukleoaren eta mikrokodeen eguneraketak ere kaleratu dira banaketa nagusietarako (Debian, SUSE/openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Arazoa apirilean identifikatu zen eta konponketa bat koordinatu zuten Intel eta sistema eragileen garatzaileen artean.

Zombieload 2.0 blokeatzeko metodorik errazena CPUan TSX euskarria desgaitzea da. Linux nukleorako proposatutako konponketak hainbat babes aukera ditu. Lehen aukerak "tsx=on/off/auto" parametroa eskaintzen du, eta horrek TSX luzapena PUZan gaituta dagoen ala ez kontrolatzeko aukera ematen du (balioak automatikoki TSX desgaitzen du CPU ahulentzat bakarrik). Bigarren babes-aukera "tsx_async_abort=off/full/full,nosmt" parametroak gaitu eta mikroarkitektura-buffer-ak garbitzean oinarritzen da testuingurua aldatzean (nosmt banderak SMT/Hyper-Threads desgaitzen du gainera). Sistema bat ahultasunak jasan ditzakeen egiaztatzeko, sysfs-ek "/sys/devices/system/cpu/vulnerabilities/tsx_async_abort" parametroa eskaintzen du.

Gainera, barruan eguneratzeko mikrokodea ezabatuta beste bat zaurgarritasuna (CVE-2018-12207) Intel prozesadoreetan, azkenekoetan ere blokeatuta dagoena eguneratzeko Linux nukleoak. Zaurgarritasuna aukera ematen du Pribilegiorik gabeko erasotzaile batek zerbitzuaren ukapena abiarazteko, sistema "Machine Check Error" egoeran zintzilikatzeko.
Erasoa barne konprometitu daitezke gonbidatu sistematik.

Iturria: opennet.ru

Gehitu iruzkin berria