Nog 'n kwesbaarheid is geïdentifiseer in AMD-verwerkers wat Meltdown-aanvalle toelaat

'n Span navorsers van die Tegniese Universiteit van Graz (Oostenryk) en die Helmholtz-sentrum vir inligtingsekuriteit (CISPA) het 'n kwesbaarheid (CVE-2021-26318) in alle AMD-verwerkers onthul wat dit moontlik maak om Meltdown-klas-sy- kanaalaanvalle (aanvanklik is aanvaar dat AMD-verwerkers nie deur die Meltdown-kwesbaarheid geraak word nie). In praktiese terme kan die aanval gebruik word om geheime kommunikasiekanale te vestig, aktiwiteit in die kern te monitor, of inligting oor adresse in kerngeheue te bekom om KASLR-beskerming te omseil terwyl kwesbaarhede in die kern uitgebuit word.

AMD beskou dit as onvanpas om spesiale maatreëls te tref om die probleem te blokkeer, aangesien die kwesbaarheid, soos 'n soortgelyke aanval wat in Augustus ontdek is, min nut is in werklike omstandighede, beperk word deur die huidige grense van die prosesadresruimte en die teenwoordigheid van sekere klaargemaakte reekse van instruksies (toerusting) in die kern. Om die aanval te demonstreer, het die navorsers hul eie kernmodule met 'n kunsmatig bygevoegde gadget gelaai. In werklike omstandighede kan aanvallers byvoorbeeld gereelde kwesbaarhede in die eBPF-substelsel gebruik om die nodige reekse te vervang.

Om teen hierdie nuwe tipe aanval te beskerm, het AMD aanbeveel om veilige koderingstegnieke te gebruik wat help om Meltdown-aanvalle te blokkeer, soos die gebruik van LFENCE-instruksies. Die navorsers wat die probleem geïdentifiseer het, beveel aan om strenger geheuebladsytabelisolasie (KPTI) moontlik te maak, wat voorheen net vir Intel-verwerkers gebruik is.

Tydens die eksperiment het die navorsers daarin geslaag om inligting van die kern na 'n proses in gebruikersruimte te lek teen 'n spoed van 52 grepe per sekonde, gegewe die teenwoordigheid van 'n gadget in die kern wat die bewerking uitvoer "if (offset < data_len) tmp = LUT[data[offset] * 4096];” . Verskeie metodes is voorgestel vir die herwinning van inligting via sykanale wat tydens spekulatiewe uitvoering in die kas beland. Die eerste metode is gebaseer op die ontleding van afwykings in die uitvoeringstyd van die verwerker-instruksie "VOORAFHAAL" (Voorafhaal + Tyd), en die tweede op die verandering van die verandering in energieverbruik wanneer "VOORHOOI" (Voorafhaal + Krag) uitgevoer word.

Onthou dat die klassieke Meltdown-kwesbaarheid gebaseer is op die feit dat die verwerker tydens spekulatiewe uitvoering van instruksies toegang tot 'n privaat dataarea kan kry en dan die resultaat kan weggooi, aangesien die gestelde voorregte sulke toegang van die gebruikerproses verbied. In die program word die spekulatief uitgevoer blok van die hoofkode geskei deur 'n voorwaardelike tak, wat in werklike toestande altyd brand, maar as gevolg van die feit dat die voorwaardelike stelling 'n berekende waarde gebruik wat die verwerker nie ken tydens die voorkomende uitvoering van die kode, word alle takopsies spekulatief uitgevoer.

Aangesien spekulatief uitgevoerde bewerkings dieselfde kas gebruik as normaalweg uitgevoer instruksies, is dit tydens spekulatiewe uitvoering moontlik om merkers in die kas te stel wat die inhoud van individuele bisse in 'n privaat geheue area weerspieël, en dan in normaal uitgevoerde kode om hul waarde te bepaal deur tydsberekening ontledingstoegange tot gekas- en nie-gekasdata.

Bron: opennet.ru

Voeg 'n opmerking