De oppdaget en sårbarhet i Linux eBPF-delsystemet

Nylig brøt nyheten det en sårbarhet ble identifisert (CVE-2021-29154) i delsystemet eBPF, som sTillater kjøring av sporing, undersystemanalyse og trafikkontrollkontrollere kjører inne i Linux-kjernen i en spesiell JIT virtuell maskin som lar en lokal bruker kjøre koden din på kjernenivå.

Ifølge forskerne som identifiserte sårbarheten, var de i stand til å utvikle en fungerende prototype av en utnyttelse for 86-biters og 32-biters x64-systemer som kan brukes av en uprivilegert bruker.

Samtidig Red Hat bemerker at alvorlighetsgraden av problemet avhenger av tilgjengeligheten av eBPF-systemanropet. for brukeren. For eksempel på RHEL og de fleste andre Linux-distribusjoner som standard, kan sårbarheten utnyttes når BPF JIT er aktivert og brukeren har CAP_SYS_ADMIN rettigheter.

Det er oppdaget et problem i Linux-kjernen som de kan misbruke
ikke-privilegerte lokale brukere for å eskalere privilegier.

Problemet er hvordan BPF JIT-kompilatorene beregner for noen arkitekturer
Grenforskyvning når du genererer maskinkode. Dette kan misbrukes
for å lage uregelmessig maskinkode og kjøre den i kjernemodus,
der kontrollflyten blir kapret for å utføre usikker kode.

Og det er at de detaljerer det problemet skyldes en feil som genereres ved beregning av forskyvning av forgreningsinstruksjonene under JIT-kompilatoren som genererer maskinkoden.

Spesielt nevnes det at når man genererer greninstruksjonene, blir det ikke tatt hensyn til at forskyvningen kan endres etter å ha gått gjennom optimaliseringsfasen, så denne feilen kan brukes til å generere avvikende maskinkode og utføre den på nivåkjernen.

Det skal bemerkes at Dette er ikke den eneste sårbarheten i eBPF-delsystemet som har blitt kjent de siste årene, siden i slutten av mars ble ytterligere to sårbarheter identifisert i kjernen (CVE-2020-27170, CVE-2020-27171), som gir muligheten til å bruke eBPF for å omgå beskyttelsen mot Specter-klassen sårbarheter, som gjør det mulig å bestemme innholdet i kjerneminnet og som resulterer i at det skapes betingelser for den spekulative utførelsen av visse operasjoner.

Spectre-angrepet krever tilstedeværelse av en spesifikk sekvens av kommandoer i den privilegerte koden, noe som fører til spekulativ gjennomføring av instruksjoner. I eBPF er det funnet flere måter å generere slike instruksjoner ved hjelp av manipulasjoner med BPF-programmer som overføres for utførelse.

  • CVE-2020-27170-sårbarheten er forårsaket av markørmanipulasjoner i BPF-kontrolløren, noe som fører til at spekulative operasjoner får tilgang til et område utenfor bufferen.
  • CVE-2020-27171-sikkerhetsproblemet er relatert til et heltallsunderstrømningsfeil når du arbeider med pekere, noe som fører til spekulativ tilgang til data utenfor bufferen.

Disse problemene er allerede løst i kjerneversjoner 5.11.8, 5.10.25, 5.4.107, 4.19.182 og 4.14.227, og har blitt inkludert i kjerneoppdateringer for de fleste Linux-distribusjoner. Forskere har utarbeidet en utnyttelsesprototype som gjør det mulig for en uprivilegert bruker å hente data fra kjerneminnet.

Angående en av løsningene som foreslått i Red Hat er:

Skadebegrensning:

Dette problemet påvirker ikke de fleste systemer som standard. En administrator må ha aktivert BPF JIT.

Det kan deaktiveres umiddelbart med kommandoen:

# echo 0 > /proc/sys/net/core/bpf_jit_enable

Eller det kan deaktiveres for alle påfølgende systemstarter ved å sette en verdi i /etc/sysctl.d/44-bpf -jit-disable

## start file ##
net.core.bpf_jit_enable=0</em>
end file ##

Endelig hvis du er interessert i å vite mer om det om dette sårbarheten, kan du sjekke detaljene i følgende lenke.

Det er verdt å nevne at problemet vedvarer til versjon 5.11.12 (inkludert) og ennå ikke er løst i de fleste distribusjoner, selv om rettelsen allerede er på plass. tilgjengelig som en lapp.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.