Атаката PMFault, която позволява да се повреди CPU на някои сървърни системи

Изследователи от Бирмингамския университет, известни с разработването на атаките Plundervolt и VoltPillager, откриха уязвимост (CVE-2022-43309) в някои сървърни дънни платки, която позволява физическо повреждане на CPU без възможност за последващо възстановяване. Уязвимостта, получила кодовото име PMFault, може да бъде използвана за повреждане на сървъри, до които атакувалият няма физически достъп, но притежава привилегирован достъп до операционната система, получен например чрез експлоатация на нерегулирана уязвимост или прихващане на административни данни.

Същността на предложената методология е в използването на интерфейса PMBus с прилагането на I2C протокол за повишаване на напрежението, подавано на процесора, до стойности, причиняващи повреждане на чипа. Интерфейсът PMBus обикновено се реализира в модула VRM (Voltage Regulator Module), до който може да се получи достъп чрез манипулации с BMC контролера. За извършване на атака на платки, поддържащи PMBus, освен административни права в операционната система е необходим софтуерен достъп до BMC (Baseboard Management Controller), например чрез интерфейса IPMI KCS (Keyboard Controller Style), през Ethernet или чрез пренаписване на BMC от текущата система.

Наличието на проблема, позволяваща извършване на атака без знание на параметри за удостоверяване в BMC, е потвърдено на дънни платки Supermicro с поддръжка на IPMI (X11, X12, H11 и H12) и ASRock, но уязвимостите също засягат и други сървърни платки, на които може да се получи достъп до PMBus. При проведените експерименти, когато напрежението бе повишено до 2.84 волта на тези платки, бяха повредени два процесора Intel Xeon. За достъп до BMC без знание на параметрите за удостоверяване, но с root права в операционната система, бе използвана уязвимост в механизма за проверка на фърмуери, която позволи зареждането на модифицирано обновление на фърмуера в BMC контролера, както и възможността за неаутентифициран достъп чрез IPMI KCS.

Метод на промяна на напрежението чрез PMBus може да се използва и за извършване на атака Plundervolt, която позволява, чрез намаляване на напрежението до минимални стойности, да се предизвика увреждане на съдържанието на клетките с данни в CPU, използвани при изчисления в изолирани анклави Intel SGX и да се генерират грешки в първоначално коректни алгоритми. Например, ако се постигне промяна на стойността, използвана при умножение в процеса на криптиране, на изхода ще се получи некоректен шифротекст. Разполагайки с възможност да се обръща към обработвача в SGX за криптиране на собствените си данни, атакуващият може, причинявайки сривове, да натрупа статистика за промяната на шифротекста на изхода и да възстанови стойността на ключа, съхраняващ се в анклава SGX.

Инструменти за извършване на атака на платки Supermicro и ASRock, както и утилита за проверка на достъпа до PMBus, са публикувани в GitHub.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster