Нові відомості про виявлення помилок безпеки, які призвели до відключення Hyper-Threading для OpenBSD

Нові відомості про виявлення помилок безпеки, які призвели до відключення Hyper-Threading для OpenBSD

На минулому тижні глава розробки OpenBSD Тео де Раатт повідомив пресі, що проект, який він очолює, більше не зможе використовувати Hyper-Threading на процесорах Intel через проблеми безпеки. Повна стаття повинна бути випущена в серпні на конференції з безпеки безпеки Black Hat. Всі де Раатт сказали, що проблема пов'язана з одночасною багатопотоковою обробкою і що це вплинуло на процесори Intel.

"Зокрема, не рекомендується запускати різні домени безпеки (адресні простори) на пару гіперпотужних процесорів", - сказав він. "Можливо, існують інші способи вирішення цієї проблеми, але Intel не поділяє рішення з нами. Ми обрали доцільний підхід до відключення гіперпотужностей, поки ми не знаємо більше ".

Минулого тижня дослідники у VU Amsterdam показали нову вразливість, яка отримала назву TLBleed, яка використовує вразливі бічні канали та Hyper-Threading для читання даних з буферу переходів lookaide або TLB кеш-пам'яті всередині процесорів Intel, повідомляє The Register. Кеш TLB не схожий на кеш-пам'ять L1 або L2, що використовуються всередині звичайного мікропроцесора. Замість цього, TLB використовується для кешування карт таблиць, які перетворюють адреси віртуальної пам'яті на фактичні фізичні місця, де дані зберігаються в оперативній пам'яті. Найчастіше використовуються карти зберігаються в TLB.

Як і у випадку атак з іншого боку, ми обговорили, тут є прогалини, які можуть бути використані. "Швидкий" доступ (дані, що підлягають пошуку, вже зберігаються в TLB) матимуть трохи інші характеристики, ніж "повільний" доступ, в якому процесор повинен йти і шукати повні таблиці, а не жменьку часто використовувані карти, які зберігаються в самому TLB. У тестовому випадку, дослідники змогли реалізувати стратегію, в якій був застосований алгоритм Curds 25519 EdDSA (за допомогою libcrypt) і запускався на одному ядрі, тоді як другий ядро ​​виконував програму атаки. Програма атаки була здатна визначити 256-бітний ключ, який використовується для підрахунку сигнатури в 99,8 відсотках тестів Skylake Core i7-6700K, 98,2 відсотка випробувань на базі Intel Broadwell Xeon E5-2620v4 та 99,8 відсотка на Кав'ярне Лейк ЦП. Клавіші можуть протікати через бічний канал, засновані на меншій кількості тих, на яких змінюються записи TLB, але коли вони змінюються.

"Час атаки" від кінця до кінця "складається з: 2мс часу захоплення; 17 секунд аналізу сигналів з підготовленим класифікатором; і змінна кількість зловмисника з урахуванням середнього коефіцієнту працездатності 213, що займає частку секунди ", - заявили в своїй роботі команда - Бен Грас, Каве Разаві, Герберт Бос та Крістіано Гіффріда.

Це не може являти собою серйозний недолік, і Intel, здається, особливо не стурбований. Один з авторів доповіді опублікував твіт на цей рахунок:

час, але не потоки даних, небезпечно; (в) шаблони доступу грубого покриву витікають більше, ніж раніше вважалося. Але не панікуйте, а прохолодна атака #tlbleed - це не новий #Spectre. Повна інформація та папір на наступному тижні. cc @ vu5ec @ c_giuffrida @ gober @herbertbos 2/2

- Бен Гра (@ bjg) 22 червня 2018 року

Intel також випустила заяву:

Intel отримала повідомлення про дослідження з університету Vrije Universiteit Amsterdam, яка окреслює потенційну вразливість бічного каналу, яка називається TLBleed. Ця проблема не залежить від спекулятивного виконання, і тому не має відношення до Spectre або Meltdown. Дослідження методів аналізу бічного каналу часто фокусуються на маніпуляції та вимірюванні характеристик (наприклад, часу) загальних ресурсів обладнання. Ці виміри потенційно дозволять дослідникам отримувати інформацію про програмне забезпечення та пов'язані дані. TLBleed використовує буфер Translation Lookaside (TLB), що є загальним для багатьох високопродуктивних мікропроцесорів, який зберігає недавні перетворення адрес з віртуальної пам'яті в фізичну. Програмні та програмні бібліотеки, такі як Intel® Integrated Performance Primitives Cryptography version U3.1 - написані для забезпечення постійного часу виконання та незалежних від даних даних трафіку кешу, - повинні бути захищеними від TLBleed. Захист даних наших клієнтів і забезпечення безпеки нашої продукції є найважливішим пріоритетом для Intel, і ми будемо продовжувати працювати з клієнтами, партнерами та дослідниками, щоб зрозуміти та послабити будь-які виявлені уразливості.

Ars Technica пропонує, що, хоча TLBleed - це нова атака бічного каналу, вона не набагато потужніше, ніж відомі атаки на сторонні канали. Також незрозуміло, чи впливає це більше, ніж криптографія. Як пише Арс: "Це проблема для крипто; це, напевно, не проблема для всіх ".

В даний час невідомо, чи вплинули процесори від AMD. Вони також впроваджують SMT, але роблять це іншим способом, ніж реалізація Intel.