Muutama viikko sitten jaoimme tƤƤllƤ blogissa uutisia EntrySign-haavoittuvuus joka mahdollistaa digitaalisen allekirjoituksen vahvistusmekanismin kiertƤmisen AMD-suorittimien mikrokoodipƤivitysten aikana.
mikƤ tahansa Aluksi se nƤytti bugilta, joka rajoittui Zen 1 - Zen 4 -sukupolviin, Se ulottuu nyt yhtƤ ajantasaisiin siruihin kuin Ryzen 9000, EPYC 9005, Ryzen AI 300 ja Ryzen 9000HX. TƤmƤ virhe sallii tietyissƤ olosuhteissa suorittimen mikrokoodin muokkaamisen ohittamalla digitaalisen allekirjoituksen vahvistusmekanismin, millƤ on vakavia vaikutuksia virtualisoitujen jƤrjestelmien turvallisuuteen.
Ongelman ydin se on CMAC-algoritmin epƤasianmukainen kƤyttƶ mikrokoodin vahvistusprosessin aikana. AMD kƤyttƤƤ perinteisesti yksityistƤ RSA-avainta allekirjoittaa nƤiden pƤivitysten sisƤllƶn digitaalisesti, ja korjaustiedostoon sisƤltyvƤ julkinen avain mikrokoodin aitouden tarkistamiseksi lastaushetkellƤ. Julkisen avaimen tiiviste, jonka pitƤisi taata tƤmƤ eheys, luodaan kuitenkin kƤyttƤmƤllƤ AES-CMAC:ia, kryptografista MAC:ia, joka, toisin kuin vahva hash-toiminto, ei takaa tƶrmƤyksiƤ vastaan.
TƤmƤ suunnittelu, lisƤtty siihen tosiasiaan, ettƤ AMD on kƤyttƤnyt yhteistƤ salausavainta kaikille suorittimillesi Zen 1:n jƤlkeen, on antanut tutkijoille mahdollisuuden poimia avaimen mistƤ tahansa prosessorista, jota asia koskee ja kƤytƤ sitƤ uudelleen kƤsittelemƤƤn mikrokoodikorjauksia muissa tietokoneissa. YllƤttƤen tƤmƤ avain vastaa julkista esimerkkiƤ NIST SP 800-38B -salauskƤytƤnnƶistƤ, mikƤ osoittaa hyvien salauskƤytƤntƶjen huolimatonta kƤyttƶƤ.
VƤƤrennetty mikrokoodi, kelvolliset allekirjoitukset
TƤstƤ heikkoudesta, Tutkijat onnistuivat luomaan julkisia avaimia, jotka tuottavat saman hashin kuin AMD:n alkuperƤinen avain., joita he mahdollisti vƤƤrennettyjen korjaustiedostojen rakentamisen, jotka pystyivƤt ohittamaan eheyden hallinnan. NƤmƤ tƶrmƤykset saadaan aikaan lisƤƤmƤllƤ lisƤlohkoja mikrokoodin loppuun, nƤennƤisesti satunnaisesti, mutta huolellisesti laskettuina, jolloin digitaalinen allekirjoitus pysyy nƤennƤisen ehjƤnƤ. TƤllƤ tavalla prosessorin sisƤistƤ kƤyttƤytymistƤ voidaan muuttaa ilman hƤlytysmekanismeja.
Analyysityƶkalut ovat helpottaneet tƤtƤ prosessia kuten Zentool, avoimen lƤhdekoodin apuohjelmien sarja, jonka avulla voit tutkia AMD:n mikrokoodia ja valmistella muokattuja korjaustiedostoja. Jotta tƤmƤntyyppinen hyƶkkƤys toteutuisi, hyƶkkƤƤjƤllƤ on oltava Ring 0 -oikeudet, eli pƤƤsy kƤyttƶjƤrjestelmƤn korkeimmalle tasolle, mikƤ on mahdollista virtualisoiduissa ympƤristƶissƤ, jos hypervisori on vaarantunut tai VT-x:n tai AMD-V:n kaltaisten teknologioiden turvattomien kokoonpanojen vuoksi.
Vaikutus AMD SEV:hen ja suojattuun virtualisointiin
Mikrokoodien manipuloinnin lisƤksi EntrySign muodostaa suoran uhan AMD SEV:lle (Secure Encrypted Virtualization) ja sen laajennukselle SEV-SNP (Secure Nested Paging), tekniikoille, jotka on suunniteltu varmistamaan virtuaalikoneiden eheys ja luottamuksellisuus myƶs hypervisorin tai isƤntƤjƤrjestelmƤn hyƶkkƤyksiƤ vastaan. TƤmƤ haavoittuvuus mahdollistaa hƤiriƶn suojattujen prosessorirekisterien toimintaan, sisƤkkƤisten sivutaulukoiden muokkaamisen ja vierasjƤrjestelmien toiminnan muuttamisen, mikƤ vaarantaa niiden turvallisuuden perusteellisesti.
AMD:n reagointi- ja lievennystoimenpiteet
TƤmƤn tilanteen edessƤ, AMD on alkanut jakaa mikrokoodipƤivityksiƤ, jotka korjaavat vian.tai vaikka SEV-SNP:tƤ kƤyttƤvissƤ jƤrjestelmissƤ on myƶs tarpeen pƤivittƤƤ SEV-moduulin laiteohjelmisto, mikƤ vaatii BIOS-pƤivityksen. Yritys on jo lƤhettƤnyt uuden paketin valmistajille nimeltƤƤn ComboAM5PI 1.2.0.3c AGESA, mutta on arvioitu, ettƤ lopulliset korjaustiedostot voivat kestƤƤ viikkoja tai jopa kuukausia, ennen kuin ne ovat loppukƤyttƤjien saatavilla.
TƤmƤn lisƤksi AMD:n insinƶƶrit ovat ehdottaneet korjaustiedostoa Linux-ytimelle, joka estƤƤ mikrokoodin lataamisen. epƤvirallinen. TƤllƤ toimenpiteellƤ pyritƤƤn estƤmƤƤn kolmannen osapuolen muokattujen korjaustiedostojen leviƤminen, kuten ne, jotka harrastajat ovat luoneet puretuista BIOS-fragmenteista. SillƤ vƤlin on erittƤin suositeltavaa odottaa virallisia BIOS-pƤivityksiƤ ja pidƤttƤytyƤ vahvistamattomien versioiden asentamisesta.
lopuksi, jos olet kiinnostunut tietƤmƤƤn siitƤ lisƤƤ, voit tarkistaa yksityiskohdat seuraava linkki.