AEPIC Leak - hyökkäys, joka johtaa avainvuotojin Intel SGX -alueista

Tietoa on paljastettu uudesta hyökkäyksestä Intel-prosessoreihin - AEPIC Leak (CVE-2022-21233), joka johtaa luottamuksellisten tietojen vuotamiseen eristetyistä Intel SGX (Software Guard eXtensions) -enklaaveista. Ongelma koskee 10., 11. ja 12. sukupolvea Intel-suorittimia (mukaan lukien uudet Ice Lake- ja Alder Lake -sarjat), ja se johtuu arkkitehtuurivirheestä, joka mahdollistaa pääsyn alustamattomiin tietoihin, jotka ovat jäljellä APIC-rekistereissä (Advanced Programmable Interrupt Controller) menneiden päivien jälkeen. toiminnot.

Toisin kuin Spectre-luokan hyökkäyksissä, AEPIC Leakin vuoto tapahtuu ilman palautusmenetelmiä kolmannen osapuolen kanavien kautta - tiedot luottamuksellisista tiedoista välitetään suoraan hankkimalla MMIO (memory-mapped I/O) -muistisivulle heijastuneiden rekisterien sisältö. . Yleensä hyökkäyksen avulla voit määrittää toisen ja viimeisen tason välimuistien välillä siirretyt tiedot, mukaan lukien rekisterien sisältö ja muistista lukutoimintojen tulokset, jotka on aiemmin käsitelty samassa CPU-ytimessä.

Koska hyökkäyksen suorittamiseen tarvitaan pääsy APIC MMIO:n fyysisille sivuille, ts. vaatii järjestelmänvalvojan oikeudet, menetelmä rajoittuu hyökkäämään SGX-enklaaveihin, joihin järjestelmänvalvojalla ei ole suoraa pääsyä. Tutkijat ovat kehittäneet työkaluja, joiden avulla he voivat tunnistaa SGX:ään tallennetut AES-NI- ja RSA-avaimet sekä Intel SGX -sertifiointiavaimet ja näennäissatunnaislukugeneraattorin parametrit muutamassa sekunnissa. Hyökkäyksen koodi julkaistiin GitHubissa.

Intel on ilmoittanut korjauksesta mikrokoodipäivityksen muodossa, joka ottaa käyttöön puskurin huuhtelun tuen ja lisää lisätoimenpiteitä erillisalueen tietojen suojaamiseksi. Intel SGX:lle on myös valmisteltu uusi SDK-julkaisu, jossa on muutoksia tietovuodojen estämiseksi. Käyttöjärjestelmien ja hypervisoreiden kehittäjille suositellaan x2APIC-tilan käyttöä vanhan xAPIC-tilan sijaan, jossa APIC-rekistereihin pääsyyn käytetään MSR-rekistereitä MMIO:n sijaan.

Lähde: opennet.ru

Lisää kommentti