Атака Platypus на процессоры Intel

e04024c9cdf7c25318e4a212a6cdcda0.jpg

Исследователи из Грацского технического университета, университета Бирмингема, а также Центра информационной безопасности имени Гельмгольца в Германии (CISPA) открыли новую атаку Platypus. Название образовано от акронима »Power Leakage Attacks:  Targeting Your Protected User Secrets». Название переводится как «утконос» из-за чувствительного клюва к электрическим полям.

Атака Platypus получила идентификатор CVE-2020–8694 (Linux + Intel), CVE-2020–8695 (Intel), CVE-2020–12912 (Linux + AMD). Исследование проводились при частичном финансировании Intel.

Атака использует RAPL-интерфейс процессоров Intel (Running Average Power Limit), который позволяет firmware и программам контролировать энергопотребление DRAM и ЦП. RAPL давно используется для отслеживания и использования энергопотребления ЦП при выполнении конкретных задач и их оптимизации.

Platypus использует RAPL чтобы узнать, какие данные обрабатывает ЦП, ориентируясь на показатели интерфейса и может обнаружить такие данные как пароли, ключи шифрования и прочее. Но такие данные обычно защищаются системами безопасности как KASLR и аппаратно изолированные среды, такие как Intel SGX. Platypus же обходит их просто наблюдая за изменением энергопотребления.

В ходе тестов исследователи смогли обойти KASLR за 20 секунд используя значения RAPL, а потом получить данные из ядра Linux. В других тестах данные смогли извлечь из защищенных анклавах Intel SGX. Platypus извлекала приватные ключи RSA из анклава SGX и для этого потребовалось наблюдать за RAPL около 100 минут. А для извлечения из пространства памяти ядра Linux и анклава SGX нужно около 26 — 277 часов.

Исследователи считают что ядро Linux больше всех подвержено уязвимости, поскольку оно идет с фреймворком  powercap — универсальным драйвером для отслеживания энергопотребления с помощью RAPL и других API.

Атаке подвержены и Windows с macOS, но для этого на ПК должно быть установлено Intel Power Gadget которое использует RAPL. В тоже время, атаки на Intel SGX работают вне зависимости от OC.

Плохая новость заключается в том что, атака может производиться удаленно, для этого нужно каким то образом заразить целевой компьютер, используя зараженные программы, уязвимости в браузерах и т.д. Уязвимости подвержены десктопные и серверные процессоры Intel, а также некоторые SoC. С полным списком процессоров можно ознакомиться здесь.

В Intel уже подготовили патчи для микрокода и распространили их для вендоров оборудования. Обновление получило и ядро Linux. Атаке Platypus подвержены большинство процессоров Intel, но поскольку RAPL-интерфейс используют и другие производители, то проблема может и касаться ARM, AMD (уже потверждено) и прочих решений, использующих схожие с RAPL технологии.

© Habrahabr.ru