Hertzbleed ir jauna sānu kanālu uzbrukumu saime, kas ietekmē mūsdienu CPU

Pētnieku komanda no Teksasas Universitātes, Ilinoisas Universitātes un Vašingtonas Universitātes ir atklājusi informāciju par jaunu sānu kanālu uzbrukumu saimi (CVE-2022-23823, CVE-2022-24436), ko sauc par Hertzbleed. Piedāvātā uzbrukuma metode ir balstīta uz mūsdienu procesoru dinamiskās frekvences kontroles funkcijām un ietekmē visus pašreizējos Intel un AMD CPU. Potenciāli problēma var izpausties arī citu ražotāju procesoros, kas atbalsta dinamiskas frekvences izmaiņas, piemēram, ARM sistēmās, taču pētījums aprobežojās ar Intel un AMD mikroshēmu testēšanu. Avota teksti ar uzbrukuma metodes ieviešanu tiek publicēti GitHub (ieviešana tika pārbaudīta datorā ar Intel i7-9700 centrālo procesoru).

Lai optimizētu enerģijas patēriņu un novērstu pārkaršanu, procesori dinamiski maina frekvenci atkarībā no slodzes, kas izraisa izmaiņas veiktspējā un ietekmē darbību izpildes laiku (frekvences izmaiņas par 1 Hz izraisa veiktspējas izmaiņas par 1 pulksteņa ciklu katrā otrais). Pētījuma laikā tika konstatēts, ka noteiktos apstākļos AMD un Intel procesoros frekvences izmaiņas tieši korelē ar apstrādājamajiem datiem, kas, piemēram, noved pie tā, ka operāciju “2022 + 23823” aprēķina laiks un “2022 + 24436” atšķirsies. Balstoties uz operāciju izpildes laika atšķirību analīzi ar dažādiem datiem, ir iespējams netieši atjaunot aprēķinos izmantoto informāciju. Tajā pašā laikā ātrdarbīgos tīklos ar paredzamu pastāvīgu aizkavi uzbrukumu var veikt attālināti, novērtējot pieprasījumu izpildes laiku.

Ja uzbrukums ir veiksmīgs, identificētās problēmas ļauj noteikt privātās atslēgas, pamatojoties uz skaitļošanas laika analīzi kriptogrāfijas bibliotēkās, kurās tiek izmantoti algoritmi, kuros matemātiskie aprēķini vienmēr tiek veikti konstantā laikā neatkarīgi no apstrādājamo datu veida . Šādas bibliotēkas tika uzskatītas par aizsargātām no sānu kanālu uzbrukumiem, taču, kā izrādījās, aprēķina laiku nosaka ne tikai algoritms, bet arī procesora īpašības.

Kā praktisks piemērs, kas parāda piedāvātās metodes izmantošanas iespējamību, tika demonstrēts uzbrukums SIKE (Supersingular Isogeny Key Encapsulation) atslēgu iekapsulēšanas mehānisma ieviešanai, kas tika iekļauts ASV rīkotā pēckvantu kriptosistēmu konkursa finālā. Nacionālais standartu un tehnoloģiju institūts (NIST), un tas ir aizsargāts pret sānu kanālu uzbrukumiem. Eksperimenta laikā, izmantojot jaunu uzbrukuma variantu, kura pamatā ir izvēlēts šifrētais teksts (pakāpeniska atlase, pamatojoties uz manipulācijām ar šifrētu tekstu un tā atšifrēšanas iegūšanu), bija iespējams pilnībā atgūt šifrēšanai izmantoto atslēgu, veicot mērījumus no attālās sistēmas, neskatoties uz to, ka SIKE ieviešanas izmantošana ar nemainīgu aprēķina laiku. 364 bitu atslēgas noteikšana, izmantojot CIRCL ieviešanu, aizņēma 36 stundas, bet PQCrypto-SIDH — 89 stundas.

Intel un AMD ir atzinuši savu procesoru neaizsargātību pret šo problēmu, taču neplāno ievainojamību bloķēt, izmantojot mikrokoda atjauninājumu, jo aparatūras ievainojamību nebūs iespējams novērst, būtiski neietekmējot aparatūras veiktspēju. Tā vietā kriptogrāfijas bibliotēku izstrādātājiem tiek sniegti ieteikumi, kā programmatiski bloķēt informācijas noplūdi, veicot konfidenciālus aprēķinus. Cloudflare un Microsoft jau ir pievienojuši līdzīgu aizsardzību savām SIKE implementācijām, kā rezultātā CIRCL veiktspēja ir samazinājusies par 5% un PQCrypto-SIDH veiktspēja par 11%. Vēl viens risinājums ievainojamības bloķēšanai ir atspējot Turbo Boost, Turbo Core vai Precision Boost režīmus BIOS vai draiverī, taču šīs izmaiņas radīs krasu veiktspējas samazināšanos.

Intel, Cloudflare un Microsoft par problēmu tika informētas 2021. gada trešajā ceturksnī, bet AMD — 2022. gada pirmajā ceturksnī, taču problēmas publiskošana pēc Intel pieprasījuma tika atlikta līdz 14. gada 2022. jūnijam. Problēmas esamība ir apstiprināta galddatoru un klēpjdatoru procesoros, kuru pamatā ir 8-11 Intel Core mikroarhitektūras paaudzes, kā arī dažādiem galddatoru, mobilajiem un serveru procesoriem AMD Ryzen, Athlon, A-Series un EPYC (pētnieki demonstrēja metodi Ryzen CPU ar Zen mikroarhitektūru 2 un Zen 3).

Avots: opennet.ru

Pievieno komentāru