LINUXTALKS.CO

Hertzbleed - новое семейство атак по сторонним каналам, затрагивающее современные CPU

 

L


0

0

Группа исследователей из Техасского, Иллинойсского и Вашингтонского
университетов раскрыли
сведения о новом семействе
атак по сторонним каналам (CVE-2022-23823, CVE-2022-24436), получившим
кодовое имя Hertzbleed. Предложенный
метод атаки основан на особенностях динамического управления частотой в
современных процессорах и затрагивает все актуальные CPU Intel и AMD.
Потенциально проблема может проявляться и в процессорах других
производителей, поддерживающих динамическое изменение частоты, например
в ARM-системах, но проведённое исследование ограничилось проверкой чипов
Intel и AMD. Исходные тексты с реализацией метода атаки
опубликованы на GitHub
(реализация протестирована на компьютере с CPU Intel i7-9700).

Для оптимизации энергопотребления и предотвращения перегрева процессоры
динамически изменяют частоту в зависимости от нагрузки, что приводит к
изменению производительности и влияет на время выполнения операций
(изменение частоты на 1 Hz приводит к изменению производительности на 1
цикл в секунду). В ходе проведённого исследования было выяснено, что при
определённых условиях на процессорах AMD и Intel изменение частоты
напрямую коррелирует с обрабатываемыми данными, что, например, приводит
к тому, что время вычисления операций «2022 + 23823» и «2022 +
24436» будет отличаться. На основании анализа отличий времени
выполнения операций с разными данными можно косвенно восстановить
информацию, используемую при вычислениях. При этом в высокоскоростных
сетях с предсказуемыми постоянными задержками атаку можно провести
удалённо, оценивая время выполнения запросов.

При успешном проведении атаки выявленные проблемы позволяют определять
закрытые ключи на основе анализа времени вычислений в криптографических
библиотеках, использующих алгоритмы, математические вычисления в которых
всегда выполняются за постоянное время, не зависимо от характера
обрабатываемых данных. Подобные библиотеки считались защищёнными от атак
по сторонним каналам, но как оказалось, время вычисления определяется не
только алгоритмом, но и особенностями работы процессора.

В качестве практического примера, показывающего реалистичность
применения предложенного метода, продемонстрирована атака на реализацию
механизма инкапсуляции ключей SIKE
(Supersingular Isogeny Key Encapsulation), который вошёл в финал конкурса
постквантумных криптосистем, проводимого Национальным институтом
стандартов и технологий США (NIST), и позиционируется как защищённый от
атак по сторонним каналам. В ходе эксперимента при помощи нового
варианта атаки на основе подобранного
шифротекста

(постепенный подбор на основе манипуляций с зашифрованным текстом и
получения его расшифровки) удалось полностью восстановить используемый
для шифрования ключ, проводя измерения с удалённой системы, несмотря на
применение реализации SIKE с постоянным временем вычислений.

Компании
Intel
и
AMD
признали подверженность своих процессоров проблеме, но не планируют
блокировать уязвимость через обновление микрокода, так как без
существенного влияния на производительность аппаратно устранить
уязвимость не получится. Вместо этого разработчикам криптографических
библиотек даны
рекомендации
по программному блокированию утечки информации при выполнении
конфиденциальных вычислений. Компании Cloudflare и Microsoft уже
добавили подобную защиту в свои реализации SIKE, что привело к снижению
производительности CIRCL на 5%, а
PQCrypto-SIDH на 11%. В
качестве другого обходного пути блокирования уязвимости в BIOS или в
драйвере можно отключить режимы "Turbo Boost", "Turbo Core" или
"Precision Boost", но данное изменение приведёт к кардинальному
снижению производительности.

Компании Intel, Cloudflare и Microsoft были уведомлены о проблеме в
третьем квартале 2021 года, а компания AMD в первом квартале 2022 года,
но по просьбе Intel публичное раскрытие сведений о проблеме было
отложено до 14 июня 2022 года. Наличие проблемы подтверждено в
процессорах для настольных систем и ноутбуков на базе 8-11 поколений
микроархитектуры Intel Core, а также для различных настольных, мобильных
и серверных процессоров AMD Ryzen, Athlon, A-Series и EPYC
(исследователи продемонстрировали метод на CPU Ryzen с микроархитектурой
Zen 2 и Zen 3).

>>> Подробности

★★☆☆☆

Зодолбали. Скоро сделают нам процессоры где на 5 ГиГАГЕРЦ рабочие будут только 1,5. Результат расчётов будет вылетать в рандомное время и место и всё такое.

LINUXTALKS-CO    
★★★
Linux / Firefox
Ответ на: комментарий от alexferman

Гибридные компуктеры. Первый компуктер вообще без систем безопасности для из вне. Он жрёт данные и выплёвывает, второй компуктер только кормит данными и выплёвывает результат. При этом теряется физический доступ к основному пк и все результаты вычислений коллапсируют в одно целое что стирает информацию о времени вычисления чего-то конкретного. Основной разгруженный проц от всяких заплаток сможет молотить данные как не в себя быстро, но данные вторым процом будут отдаваться фиксированным блоком раз в константное время согласно пропускной способности канала.

А вообще, подобными ковыряниями можно ещё десятки уязвимостей найти.

Так же косвенно можно по шуму с PCM определить что там считается и так далее.

LINUXTALKS-CO    
★★★
Linux / Firefox

Блджад, да сделайте уже отдельный криптографический сопроцессор без всякой хурмы вроде эвристики и изменения частоты. И не гоняйте чувствительные вычисления на основном, пусть он жжёт киловаты пропихивая жирные jsonы во всратых современных приложухах.

cocucka    
★★★★★★★★★★
Linux / Firefox
Ответ на: комментарий от LINUXTALKS-CO

Просто надо разделять вычисления чувствительных данных и прочих, и выполнять первые в защищённом контуре.

cocucka    
★★★★★★★★★★
Linux / Firefox
Ответ на: комментарий от cocucka

Просто надо разделять вычисления чувствительных данных и прочих, и выполнять первые в защищённом контуре.

На эльбрусе в спецкомнате в присутствии караульного с автоматом?

d_a    
★★★★★★★★
Linux / Chrome
Ответ на: комментарий от cocucka

Ну мы всё так и делаем. На картон кстати перешли, потому что ленты айбиэмовские кончились, а новых сами понимаете, не купить-с.

d_a    
★★★★★★★★
Linux / Chrome
Ответ на: комментарий от cocucka

Ну так и получается почти сопроцессор. На базе обычного ЦП хрен у тебя чего выйдет. В эльбрусах вроде так, дам критичные вычисления происходят кажется в полностью изолированном от остального АЛУ, адресации,кешей и всё такое прочее. Если не ошибаюсь, при этом результаты основное железо просто ждёт, от этого теряется скорость, но не всей системы она то как работала так и работает, а просто от ожидания когда там выплюнет данные. Я наверное всё напутал, но что-то как то так или типа того.

LINUXTALKS-CO    
★★★
Linux / Firefox
Ответ на: комментарий от cocucka

Уже почти сделали, TPM называется.

kmeaw    
★★★
Linux / Chrome
Ограничение на отправку комментариев: только для зарегистрированных пользователей, score>=90