Oplysninger om et nyt angreb på Intel-processorer — AEPIC Leak (CVE-2022-21233), som fører til lækager af fortrolige data fra isolerede Intel SGX-enklaver (Software Guard eXtensions), er blevet offentliggjort. Problemet berører 10., 11. og 12. generation af Intel CPU'er (herunder de nye serier Ice Lake og Alder Lake) og er forårsaget af en arkitektonisk mangel, der gør det muligt at tilgå uinitialiserede data, der er blevet tilbage i APIC (Advanced Programmable Interrupt Controller) registre efter udførelse af tidligere operationer.
I modsætning til Spectre-klasse angreb sker lækagen i AEPIC Leak uden brug af metoder til at genoprette data via sidekanaler — oplysninger om fortrolige data overføres direkte ved at få adgang til indholdet af registre, der er afspejlet på MMIO (memory-mapped I/O) hukommelsessiden. Generelt tillader angrebet at bestemme data, der overføres mellem cache-lagene to og tre, inklusive indholdet af registre og resultaterne af læseoperationer fra hukommelsen, som tidligere er blevet behandlet på den samme CPU-kerne.
Da det kræves, at der er adgang til de fysiske sider af APIC MMIO for at udføre angrebet, hvilket betyder, at administratorrettigheder kræves, er metoden begrænset til angreb på SGX-enklaver, hvortil administrator ikke har direkte adgang. Forskere har udviklet et værktøj, der gør det muligt at identificere de opbevarede AES-NI og RSA nøgler i SGX inden for få sekunder samt Intel SGX attesteringsnøgler og parametre for den pseudo-tilfældige nummergenerator. Koden til at udføre angrebet er offentliggjort på GitHub.
Intel har annonceret, at de forbereder en rettelse i form af en mikroprogrammeringsopdatering, der implementerer understøttelse til rensning af buffere og tilføjer yderligere foranstaltninger til beskyttelse af data fra enklaverne. Der er også forberedt en ny version af SDK til Intel SGX med ændringer, der forhindrer data-lækager. Operativsystem- og hypervisor-udviklere opfordres til at bruge x2APIC-modus i stedet for den forældede xAPIC-modus, hvor der for adgang til APIC registre bruges MSR-registre i stedet for MMIO.
Kilde: opennet.ru
