EBPF: n heikkous sallii ohitussuojan Spectre-hyökkäyksiä vastaan

Eilen julkaisimme täällä blogissa uutiset Aya, kirjasto eBPF-ohjainten luomiseen in Rust ja on, että tämän tarkoituksena on luoda turvallisempia ohjaimia tai Prossimo-projekti muistin varmistamiseksi Linux-ytimestä Rustin kanssa (kaksi upeaa projektia, joista saa paljon puhetta seuraavina kuukausina).

Ja se lyhyessä ajassa on raportoitu useita haavoittuvuuksia jossa hyödyntää eBPF: n virheitä ja että se on asia, jossa ytimen kehittäjät eivät ole lakanneet toimimasta ja ehkä Rust on ratkaisu.

Syy tähän aiheeseen koskemiseen on äskettäin julkaistiin heidän tunnistamansa uutinen "Muu" haavoittuvuus Linux-ytimessä (CVE-2021-33624) varten ohitussuoja Spectre-luokan haavoittuvuuksilta, koska tämä mahdollistaa eBPF-alijärjestelmän käytön pystyäksesi määrittämään muistin sisällön olosuhteiden luomisen seurauksena spekulaatioille tiettyjen toimintojen suorittamisesta.

Mainitaan, että haavoittuvuus se johtuu todentimen virheistä, jota käytetään virheiden ja virheellisen toiminnan havaitsemiseen BPF-ohjelmissa. Todentaja listaa mahdolliset koodin suorituspolut, mutta jättää huomiotta kaikki haarautumisvaihtoehdot, jotka eivät ole kelvollisia komentojoukon arkkitehtuurin semantiikan kannalta.

Suoritettaessa BPF-ohjelmaa prosessori voi ennustaa väärin haarautumisvaihtoehdot, joita todentaja ei ottanut huomioon ja suorittaa spekulatiivisessa tilassa.

Vaikuttavissa järjestelmissä etuoikeutettu BPF-ohjelma voi hyödyntää tätä heikkoutta suodattaa mielivaltaisen ytimen muistin (ja siten kaiken fyysisen muistin) sisällön sivukanavan kautta.

Esimerkiksi analysoitaessa "kuormitus" -operaatiota todentaja olettaa, että käsky käyttää rekisteriä osoitteella, jonka arvo on aina määriteltyjen rajojen sisällä, mutta hyökkääjä voi luoda olosuhteet jonka nojalla prosessori yrittää spekulatiivisesti suorittaa kaupan osoitteella, joka ei täytä tarkistusehtoja.

Spectre-hyökkäys vaatii tietyn komentosarjan läsnäolon etuoikeutetussa koodissa, mikä johtaa spekulatiiviseen ohjeiden toteuttamiseen. Käsittelemällä suoritettavaksi siirrettyjä BPF-ohjelmia on mahdollista luoda tällaiset ohjeet eBPF: ään ja suodattaa ytimen muistin sisältö ja mielivaltaiset fyysisen muistin alueet sivukanavien kautta.

Lisäksi, voit merkitä huomautuksen suorituskyvyn vaikutuksesta omaisuuden suojaamaan Spectre-luokan haavoittuvuuksilta.

Tässä huomautuksessa esitetään yhteenveto tuloksista rr (Record and Replay) -viankorjausoptimointi, jonka Mozilla on luonut kerran toistamaan vaikeasti toistettavia virheitä Firefoxissa. Hakemistojen olemassaolon tarkistamiseen käytettyjen järjestelmäkutsujen välimuisti pienensi testiprojektin "rr lähteet" -toimintoa 3 minuutista 19 sekuntiin 36 sekuntiin.

Optimoinnin tekijä päätti tarkistaa kuinka paljon muuttuu suorituskyky poistettuasi Spectre-suojauksen. Kun järjestelmä on käynnistetty parametrilla «mitigations = off», «rr-lähteiden» suoritusaika ilman optimointia oli 2 minuuttia 5 sekuntia (1.6 kertaa nopeampi) ja optimoinnilla 33 sekuntia (9% nopeampi).

Utelias, Spectre-suojauksen poistaminen käytöstä paitsi vähentää ajonaikaa ytimen tason koodista 1.4 kertaa (2 min 9 s - 1 min 32 s), se puolitti myös käyttäjän tila-ajan (1 minuutista 9 sekuntiin 33 sekuntiin), oletettavasti tehokkuuden laskun takia, CPU-välimuisti ja TLB nollataan, kun Spectre-suojaus on käytössä.

Ongelma on ilmennyt 4.15-ytimen julkaisun ja on kiinnitetty laastareina, joka ei tällä hetkellä vielä saavuta kaikkia jakeluja, joten käyttäjille suositellaan, että he tekevät nykyään tarvittavat päivitykset heti saatuaan ilmoitukset.

Si haluat tietää enemmän siitä, voit tarkistaa yksityiskohdat Seuraavassa linkissä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.