Sårbarhed i eBPF muliggør bypass-beskyttelse mod Spectre-angreb

I går offentliggjorde vi her på bloggen nyhederne om Aya, et bibliotek til oprettelse af eBPF-drivere i Rust og er, at formålet med dette er at skabe mere sikre drivere eller Prossimo-projekt for at sikre hukommelse af Linux-kernen med Rust (to gode projekter, der vil give meget at tale om i de følgende måneder).

Og det i løbet af kort tid er der rapporteret om forskellige sårbarheder hvori drage fordel af fejl i eBPF og at det er et problem, hvor kerneudviklerne ikke er stoppet med at arbejde, og måske er Rust løsningen.

Årsagen til at røre ved dette emne er, at for nylig blev nyheden frigivet, som de har identificeret "Andet" sårbarhed i Linux-kernen (CVE-2021-33624) for omgå beskyttelse mod Specter-klasse sårbarheder, da dette gør det muligt at bruge eBPF-undersystemet til at være i stand til at bestemme indholdet af hukommelsen som et resultat af oprettelsen af ​​betingelser for spekulationer om udførelse af visse operationer.

Det nævnes, at sårbarheden det er forårsaget af fejl i verifikatoren, som bruges til at opdage fejl og ugyldig aktivitet i BPF-programmer. Verifikatoren viser de mulige kodeudførelsesstier, men ignorerer eventuelle forgreningsindstillinger, der ikke er gyldige set fra instruktionssætets arkitektursemantik.

Når du kører et BPF-program, kan forgreningsindstillinger, der ikke blev taget i betragtning af verifikatoren, forudsiges forkert af processoren og udføres i en spekulativ tilstand.

På berørte systemer kan et uprivilegeret BPF-program udnytte denne sårbarhed til at filtrere indholdet af vilkårlig kernehukommelse (og derfor al fysisk hukommelse) gennem en sidekanal.

Fx ved analyse af "belastning" -operationen antager verifikatoren, at instruktionen bruger et register med en adresse, hvis værdi altid er inden for de angivne grænser, men en angriber kan skabe betingelser under hvilken processoren vil spekulativt forsøge at udføre en handel med en adresse, der ikke opfylder verifikationsbetingelserne.

Spectre-angrebet kræver tilstedeværelsen af ​​et specifikt script i den privilegerede kode, hvilket fører til spekulativ udførelse af instruktioner. Ved at manipulere de BPF-programmer, der sendes til udførelse, er det muligt at generere sådanne instruktioner i eBPF og filtrere indholdet af kernehukommelse og vilkårlige områder af fysisk hukommelse gennem sidekanaler.

Derudover du kan markere en note om effektpåvirkningen af aktiver for at beskytte mod Spectre-klassen af ​​sårbarheder.

Denne note opsummerer resultaterne debugger optimering rr (Record and Replay), en gang oprettet af Mozilla for at debugge svære at gentage fejl i Firefox. Caching af systemopkald, der blev brugt til at kontrollere eksistensen af ​​kataloger, reducerede "rr-kilder" -operationen for testprojektet fra 3 minutter 19 sekunder til 36 sekunder.

Optimeringsforfatteren besluttede at kontrollere hvor meget vil ændre sig ydeevne efter deaktivering af Spectre-beskyttelse. Efter opstart af systemet med parameteren "afbødning = slukket" var udførelsestiden for "rr-kilder" uden optimering 2 minutter 5 sekunder (1.6 gange hurtigere) og med optimering 33 sekunder (9% hurtigere).

Mærkeligt nok deaktivering af Spectre-beskyttelse reducerede ikke kun kørselstid af kerneniveau-koden i 1.4 gange (fra 2 min 9s til 1 min 32s), det halverede også udførelsestiden i brugerområdet (fra 1 min. 9s til 33s), formodentlig på grund af et fald i effektiviteten CPU-cache og TLB nulstilles, når Spectre-beskyttelse er aktiveret.

Problemet er opstået siden 4.15-kerneludgivelsen og er blevet rettet i form af programrettelser, som i øjeblikket stadig ikke når alle distributioner, så det anbefales til brugerne, at de i disse dage foretager de relevante opdateringer, så snart de modtager underretningerne.

Si du vil vide mere om det, kan du kontrollere detaljerne I det følgende link.


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for data: AB Internet Networks 2008 SL
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.