Hertzbleed er en ny familie av sidekanalangrep som påvirker moderne CPUer

Et team av forskere fra University of Texas, University of Illinois og University of Washington har avslørt informasjon om en ny familie av sidekanalangrep (CVE-2022-23823, CVE-2022-24436), kodenavnet Hertzbleed. Den foreslåtte angrepsmetoden er basert på funksjonene til dynamisk frekvenskontroll i moderne prosessorer og påvirker alle nåværende Intel- og AMD-prosessorer. Potensielt kan problemet også manifestere seg i prosessorer fra andre produsenter som støtter dynamiske frekvensendringer, for eksempel i ARM-systemer, men studien var begrenset til å teste Intel- og AMD-brikker. Kildetekstene med implementering av angrepsmetoden er publisert på GitHub (implementeringen ble testet på en datamaskin med en Intel i7-9700 CPU).

For å optimalisere strømforbruket og forhindre overoppheting, endrer prosessorer dynamisk frekvensen avhengig av belastningen, noe som fører til endringer i ytelse og påvirker utførelsestiden for operasjoner (en endring i frekvens med 1 Hz fører til en endring i ytelse med 1 klokkesyklus pr. sekund). Under studien ble det funnet at under visse forhold på AMD- og Intel-prosessorer, korrelerer endringen i frekvens direkte med dataene som behandles, noe som for eksempel fører til at beregningstiden for operasjonene "2022 + 23823" og "2022 + 24436" vil være annerledes. Basert på analysen av forskjeller i utførelsestiden for operasjoner med forskjellige data, er det mulig å indirekte gjenopprette informasjonen som er brukt i beregninger. Samtidig, i høyhastighetsnettverk med forutsigbare konstante forsinkelser, kan et angrep utføres eksternt ved å estimere utførelsestiden for forespørsler.

Hvis angrepet lykkes, gjør de identifiserte problemene det mulig å bestemme private nøkler basert på en analyse av beregningstiden i kryptografiske biblioteker som bruker algoritmer der matematiske beregninger alltid utføres i konstant tid, uavhengig av arten av dataene som behandles . Slike biblioteker ble ansett som beskyttet mot sidekanalangrep, men som det viste seg, bestemmes beregningstiden ikke bare av algoritmen, men også av egenskapene til prosessoren.

Som et praktisk eksempel som viser gjennomførbarheten av å bruke den foreslåtte metoden, ble et angrep på implementeringen av SIKE (Supersingular Isogeny Key Encapsulation) nøkkelinnkapslingsmekanisme demonstrert, som ble inkludert i finalen i post-kvantekryptosystemer-konkurransen holdt av USA National Institute of Standards and Technology (NIST), og er posisjonert som beskyttet mot sidekanalangrep. Under eksperimentet, ved å bruke en ny variant av angrepet basert på valgt chiffertekst (gradvis utvelgelse basert på manipulering av chifferteksten og oppnå dens dekryptering), var det mulig å fullstendig gjenopprette nøkkelen som ble brukt til kryptering ved å ta målinger fra et eksternt system, til tross for bruk av en SIKE-implementering med konstant beregningstid. Å bestemme en 364-bits nøkkel ved å bruke CIRCL-implementeringen tok 36 timer, og PQCrypto-SIDH tok 89 timer.

Intel og AMD har erkjent at deres prosessorer er sårbare for problemet, men planlegger ikke å blokkere sårbarheten gjennom en mikrokodeoppdatering, siden det ikke vil være mulig å eliminere sårbarheten i maskinvaren uten betydelig innvirkning på maskinvareytelsen. I stedet får utviklere av kryptografiske biblioteker anbefalinger om hvordan de kan blokkere informasjonslekkasje programmatisk når de utfører konfidensielle beregninger. Cloudflare og Microsoft har allerede lagt til lignende beskyttelse til SIKE-implementeringene sine, noe som har resultert i 5 % ytelsestreff for CIRCL og 11 % ytelsestreff for PQCrypto-SIDH. En annen løsning for å blokkere sårbarheten er å deaktivere Turbo Boost-, Turbo Core- eller Precision Boost-moduser i BIOS eller driver, men denne endringen vil resultere i en drastisk reduksjon i ytelsen.

Intel, Cloudflare og Microsoft ble varslet om problemet i tredje kvartal 2021, og AMD i første kvartal 2022, men offentlig avsløring av problemet ble forsinket til 14. juni 2022 på Intels forespørsel. Tilstedeværelsen av problemet er bekreftet i stasjonære og bærbare prosessorer basert på 8-11 generasjoner Intel Core-mikroarkitektur, så vel som for ulike stasjonære, mobile og serverprosessorer AMD Ryzen, Athlon, A-Series og EPYC (forskere demonstrerte metoden på Ryzen CPUer med Zen mikroarkitektur 2 og Zen 3).

Kilde: opennet.ru

Legg til en kommentar