„Reptar“ pažeidžiamumas, turintis įtakos „Intel“ procesoriams

Tavis Ormandy, „Google“ saugumo tyrinėtojas, nustatė naują „Intel“ procesorių pažeidžiamumą (CVE-2023-23583), kodiniu pavadinimu Reptar, kuris daugiausia kelia grėsmę debesų sistemoms, kuriose veikia skirtingų vartotojų virtualios mašinos. Dėl pažeidžiamumo sistema užstringa arba sugenda, kai tam tikros operacijos atliekamos neprivilegijuotose svečių sistemose. Norėdami išbandyti jūsų sistemas, buvo paskelbta programa, kuri sukuria sąlygas pažeidžiamumui pasireikšti.

Teoriškai pažeidžiamumas gali būti naudojamas privilegijoms iš trečiojo į nulinį apsaugos žiedą (CPL0) padidinti ir pabėgti iš izoliuotų aplinkų, tačiau šis scenarijus dar nebuvo patvirtintas praktikoje dėl mikroarchitektūros lygmens derinimo sunkumų. Vidinė „Intel“ apžvalga taip pat parodė, kad pažeidžiamumas gali būti išnaudotas siekiant padidinti privilegijas tam tikromis sąlygomis.

Tyrėjo teigimu, pažeidžiamumas yra „Intel Ice Lake“, „Rocket Lake“, „Tiger Lake“, „Raptor Lake“, „Alder Lake“ ir „Sapphire Rapids“ procesorių šeimose. „Intel“ ataskaitoje minima, kad problema atsiranda pradedant 10 kartos (Ice Lake) Intel Core procesorių ir trečios kartos Xeon Scalable procesorių, taip pat Xeon E/D/W procesoriuose (Ice Lake, Skylake, Haswell, Broadwell). , Skylake, Sapphire Rapids, Emerald Rapids, Cascade Lake, Cooper Lake, Comet Lake, Rocket Lake) ir Atom (Apollo Lake, Jasper Lake, Arizona Beach, Alder Lake, Parker Ridge, Snow Ridge, Elkhart Lake ir Denverton). Minėtas pažeidžiamumas buvo ištaisytas vakarykščiu mikrokodo atnaujinimu 20231114.

Pažeidžiamumą sukelia tai, kad esant tam tikroms mikroarchitektūrinėms aplinkybėms, „REP MOVSB“ instrukcijos vykdymas yra užkoduotas per dideliu „REX“ priešdėliu, o tai lemia neapibrėžtą elgesį. Problema buvo aptikta perteklinių priešdėlių testavimo metu, į kuriuos teoriškai reikėtų nepaisyti, tačiau praktiškai tai sukėlė keistus efektus, tokius kaip besąlyginių šakų ignoravimas ir rodyklės išsaugojimo xsave ir iškvietimo instrukcijose nutraukimas. Tolesnė analizė parodė, kad perteklinio priešdėlio pridėjimas prie „REP MOVSB“ instrukcijos sugadinamas ROB (ReOrder Buffer) buferio, naudojamo instrukcijoms užsakyti, turinys.

Manoma, kad klaidą sukelia neteisingas „MOVSB“ instrukcijos dydžio apskaičiavimas, dėl kurio pažeidžiamas nurodymų, įrašytų į ROB buferį po MOVSB ​​su per dideliu priešdėliu, adresavimas ir poslinkis. instrukcijų žymeklį. Toks desinchronizavimas gali apsiriboti tarpinių skaičiavimų sutrikimu ir vėlesniu integralios būsenos atkūrimu. Bet jei tuo pačiu metu sugendate kelis branduolius arba SMT gijas, galite pakankamai pažeisti mikroarchitektūrinę būseną, kad sugestų.

Šaltinis: opennet.ru

Pirkite patikimą prieglobą svetainėms su DDoS apsauga, VPS VDS serveriais 🔥 Įsigykite patikimą svetainių talpinimą su DDoS apsauga, VPS VDS serveriais | ProHoster