Výskumníci z Birmingham University, známi svojou prácou na útokoch Plundervolt a VoltPillager, odhalili zraniteľnosť (CVE-2022-43309) v niektorých serverových základných doskách, ktorá umožňuje fyzicky zničiť CPU bez možnosti jeho následného obnovenia. Zraniteľnosť, ktorá dostala kódové meno PMFault, môže byť využitá na poškodenie serverov, ku ktorým útočník nemá fyzický prístup, ale má privilégiá v operačnom systéme, získané napríklad v dôsledku zneužitia neopravenej zraniteľnosti alebo získania prihlasovacích údajov administrátora.
Podstata navrhovanej metódy spočíva v použití rozhrania PMBus, ktoré využíva protokol I2C, na zvýšenie napätia podávaného na procesor až na úrovne, ktoré spôsobujú poškodenie čipu. Rozhranie PMBus sa zvyčajne realizuje v module VRM (Voltage Regulator Module), k ktorému je možné získať prístup prostredníctvom manipulácie s BMC ovládačom. Na vykonanie útoku na dosky podporujúce PMBus je okrem administrátorských práv v operačnom systéme potrebný aj softvérový prístup k BMC (Baseboard Management Controller), napríklad prostredníctvom rozhrania IPMI KCS (Keyboard Controller Style), cez Ethernet alebo prostredníctvom preflashovania BMC z aktuálneho systému.
Existencia problému, ktorý umožňuje útok bez znalosti autentifikačných parametrov v BMC, bola potvrdená na základných doskách Supermicro podporujúcich IPMI (X11, X12, H11 a H12) a ASRock, ale zraniteľnosti sú takisto prítomné aj na iných serverových doskách, na ktorých je možné získať prístup k PMBus. V priebehu uskutočnených experimentov, pri zvýšení napätia na 2.84 volty, bolo na týchto doskách poškodených dva procesory Intel Xeon. Na prístup k BMC bez znalosti autentifikačných parametrov, ale s root prístupom k operačnému systému, bola využitá zraniteľnosť v mechanizme verifikácie firmvéru, ktorá umožnila nahranie upraveného aktualizačného súboru do BMC ovládača, ako aj možnosť neautentifikovaného prístupu cez IPMI KCS.
Metóda zmeny napätia cez PMBus sa môže tiež použiť na vykonanie útoku Plundervolt, ktorý umožňuje poškodiť obsah buniek s údajmi v CPU znížením napätia na minimálne hodnoty počas výpočtov v izolovaných enklávach Intel SGX a generovať chyby v pôvodne správnych algoritmoch. Napríklad, ak sa podarí zmeniť hodnotu používanú pri násobení v procese šifrovania, výstupom bude nesprávny šifrovaný text. Ak má útočník schopnosť pristupovať k spracovateľovi v SGX pre šifrovanie svojich údajov, môže pomocou spôsobovania chýb zhromaždiť štatistiku o zmene šifrovaného textu na výstupe a obnoviť hodnotu kľúča uloženého v enkláve SGX.
Nástroje na vykonanie útoku na dosky Supermicro a ASRock, ako aj utilita na overenie prístupu k PMBus, sú zverejnené na GitHub.
Zdroj: opennet.ru
