🗞️ Fedora 45 включает теневой стек: защита от ROP для новых процессоров
Fedora 45 собирается включить защиту на основе теневого стека (Shadow Stack) по умолчанию для бинарников, собранных под x86_64. Это аппаратная фича Intel CET, доступная начиная с 11-го поколения Intel (Tiger Lake, Rocket Lake) и AMD Zen3. Включат поддержку в GCC, Clang и rustc — то есть под раздачу попадают C, C++ и Rust.
Что это даёт на практике: если в приложении переполнят буфер на стеке и попытаются переписать адрес возврата, теневой стек это заметит — у него своя копия адресов в защищённой области памяти. ROP-атаки (Return-Oriented Programming) становятся значительно сложнее. Разумеется, на старых процессорах без аппаратной поддержки (Zen2 и старше) инструкции CET просто работают как NOP — защита не включается, но и не ломает совместимость.
Лично я считаю это правильным шагом: лучше защитить пользователей современного железа, чем тянуть совместимость с процессорами десятилетней давности. Fedora всегда была дистрибутивом для тех, кто хочет новое, а не для тех, кто сидит на Pentium 4. Если у вас Zen2 — ну, может, пора подумать об апгрейде. А если боитесь, что какой-то старый софт сломается — всегда можно пересобрать пакет с флагом -fcf-protection=none. Но в целом, безопасность в продакшене того стоит.
Источник
#новости
Post #144
333