De fant en spekulativ kjøringssårbarhet som påvirker AMD

Prosjektet nylig Grsecurity gjort kjent gjennom en publikasjon detaljer og en demo en angrepsmetode for en ny sårbarhet (allerede oppført som CVE-2021-26341) på AMD-prosessorer relatert til utførelse av spekulative instruksjoner etter ubetingede hoppe-forover-operasjoner.

Sårbarhet lar prosessoren spekulativt behandle instruksjonen umiddelbart etter hopp-instruksjonen (SLS) i minnet under spekulativ utførelse. Samtidig fungerer slik optimalisering ikke bare for betingede hoppoperatører, men også for instruksjoner som involverer et direkte ubetinget hopp, som JMP, RET og CALL.

Ubetingede greninstruksjoner kan følges av vilkårlige data som ikke er ment for utførelse. Etter å ha fastslått at grenen ikke innebærer utførelse av neste setning, prosessoren ruller rett og slett tilbake tilstanden og ignorerer spekulativ utførelse, men instruksjonsutførelsessporet forblir i den generelle hurtigbufferen og er tilgjengelig for analyse ved hjelp av side-kanal-hentingsmetoder.

AMD gir en oppdatering for en anbefalt reduksjon, G-5-reduksjonen, i "Software Techniques for Managing Speculation in AMD Processors" whitepaper. G-5-reduksjonen hjelper til med å adressere potensielle sårbarheter knyttet til spekulativ oppførsel av greninstruksjoner.

AMD-prosessorer kan forbigående utføre instruksjoner etter en ubetinget videreforgrening som kan resultere i hurtigbufferaktivitet

Som med utnyttelsen av Spectre-v1, et angrep krever tilstedeværelsen av visse sekvenser av instruksjoner (gadgets) i kjernen, noe som fører til spekulativ utførelse.

I dette tilfellet koker blokkering av en sårbarhet ned til å identifisere slike enheter i koden og legge til ytterligere instruksjoner til dem som blokkerer spekulativ kjøring. Betingelser for spekulativ utførelse kan også opprettes ved å bruke ikke-privilegerte programmer som kjører på den virtuelle eBPF-maskinen.

Denne undersøkelsen resulterte i oppdagelsen av en ny sårbarhet, CVE-2021-26341 [1] , som vi vil diskutere i detalj i denne artikkelen. Som vanlig vil vi fokusere på de tekniske aspektene ved sårbarheten, avbøtningene foreslått av AMD og utnyttelsesaspektene.

For å blokkere muligheten til å bygge enheter ved hjelp av eBPF, det anbefales å deaktivere uprivilegert tilgang til eBPF i systemet ("sysctl -w kernel.unprivileged_bpf_disabled=1").

Sårbarheten påvirker prosessorer basert på Zen1- og Zen2-mikroarkitekturen:

Desk

  • AMD Athlon™ X4-prosessor
  • AMD Ryzen™ Threadripper™ PRO-prosessor
  • XNUMX. generasjon AMD Ryzen™ Threadripper™-prosessorer
  • XNUMX. generasjons AMD Ryzen™ Threadripper™-prosessorer
  • XNUMX. generasjon AMD A-serie APU
  • AMD Ryzen™ 2000-serien stasjonære prosessorer
  • AMD Ryzen™ 3000-serien stasjonære prosessorer
  • Desktop-prosessorer i AMD Ryzen™ 4000-serien med Radeon™-grafikk

Mobile

  • AMD Ryzen™ 2000-serien mobil prosessor
  • AMD Athlon™ 3000-serien mobile prosessorer med Radeon™-grafikk
  • AMD Ryzen™ 3000-serien mobile prosessorer eller XNUMX. generasjons AMD Ryzen™ mobile prosessorer med Radeon™-grafikk
  • AMD Ryzen™ 4000-serien mobile prosessorer med Radeon™-grafikk
  • AMD Ryzen™ 5000-serien mobile prosessorer med Radeon™-grafikk

Chromebook

  • AMD Athlon™ mobile prosessorer med Radeon™-grafikk

serveren

  • Første generasjon AMD EPYC™-prosessorer
  • XNUMX. generasjons AMD EPYC™-prosessorer

Det nevnes at hvis angrepet er vellykket, sårbarheten gjør at innholdet i vilkårlige minneområder kan bestemmes.

På grunn av dette sikkerhetsproblemet kan det være mulig å identifisere godartede kodekonstruksjoner som danner begrensede, men potensielt utnyttbare SLS-enheter på berørte CPUer. Som vist med eBPF-eksemplet, er det også mulig å utnytte sårbarheten med håndbygde, selvinjiserte enheter. Den presenterte metoden kan for eksempel brukes til å bryte KASLR-reduksjonen av Linux-kjernen.

For eksempel har forskere utarbeidet en utnyttelse som lar deg bestemme utformingen av adressen og omgå KASLR (kernel memory randomization) beskyttelsesmekanismen ved å utføre kode uten privilegier i eBPF kjernedelsystemet, i tillegg til Andre angrepsscenarier som kan lekke innholdet i kjerneminnet er ikke utelukket.

Endelig hvis du er interessert i å vite litt mer om det, kan du sjekke detaljene I den følgende lenken.


Legg igjen kommentaren

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

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  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.