Подготовлен (https://hardenedbsd.org/article/op/2018-12-17/stable-release... первый стабильный выпуск HardenedBSD 12 (http://hardenedbsd.org/), форка операционной системы FreeBSD 12 (https://www.opennet.ru/opennews/art.shtml?num=49769), в который интегрированы дополнительные механизмы защиты (https://hardenedbsd.org/content/easy-feature-comparison) и техники противодействия методам эксплуатации уязвимостей. Установочные iso-образы и сборки для виртуальных машин сформированы (http://installer.hardenedbsd.org/pub/HardenedBSD/releases/am... для архитектуры AMD64. По мере готовности развиваемые проектом HardenedBSD по возможности переносятся в основные ветки FreeBSD.
По сравнению с HardenedBSD 11 в новой ветке реализованы следующие улучшения:
- При сборке приложений задействован механизм проверки целостности выполнения программ Non-Cross-DSO CFI (Control Flow Integrity), нацеленный на выявление некоторых форм неопределённого поведения, которые потенциально могут привести к нарушению нормального потока управления (проброс на произвольное место в памяти) в результате атаки на приложение. Для ядра CFI пока не применяется;
- Дополнительная изоляция гипервизора bhyve;
- Возможность включения режима отладки непривилегированных процессов
(sysctl security.bsd.unprivileged_process_debug) для отдельных jail-окружений;
- Применение метода защиты retpoline (https://www.opennet.ru/opennews/art.shtml?num=47864) для блокирования уязвимости Spectre v2 на этапе сборки приложений из портов и базовой системы;
- Отключение по умолчанию технологии одновременной многопоточности (SMT или Hyper-Threading). Для включения следует установить переменную machdep.hyperthreading_allowed=1 в loader.conf;
- Перевод связанных с компилятором утилит ar, nm и objdump на реализации от проекта LLVM (llvm-ar, llvm-nm, and llvm-objdump);
- Сборка приложений с включением оптимизации на этапе связывания (LTO, Link-Time Optimization).
Из особенностей (https://github.com/HardenedBSD/hardenedBSD/wiki#features) HardenedBSD можно отметить:
- Реализации ASLR (Address Space Layout Randomization), NOEXEC и SEGVGUARD (защита от обхода ASLR);
- Более защищённые варианты mprotect и procfs/linprocfs;
- Ограничение некоторых настроек sysctl;
- Усиление защиты на стадии загрузки;
- Запрет маппинга страниц памяти одновременно в режиме исполнения и записи (W^X);
- Усиление защиты сетевого стека, добавление рандомизации идентификаторов IP и временных адресов IPv6;
- Защита от метода работы эксплоитов SROP (https://en.wikipedia.org/wiki/Sigreturn-oriented_programming) (Sigreturn-oriented programming);
- Изоляция большей части исполняемых файлов базовой системы на уровне ограничения доступа к системным вызовам;
- Возможность запуска программ только из разрешённых каталогов;
- Сборка исполняемых файлов базовой системы и портов в режиме PIE (Position-Independent Executables) с защитой от переполнения стека (SafeStack), механизмом проверки целостности выполнения программы CFI (Control Flow Integrity), защитой от эксплуатации уязвимостей Spectre (патчи retpoline) и включением опций RELRO и BIND_NOW;
- Для применения к приложениям дополнительных техник защиты предлагается утилита secadm (https://www.opennet.ru/opennews/art.shtml?num=41361).
URL: https://hardenedbsd.org/article/op/2018-12-17/stable-release...
Новость: https://www.opennet.ru/opennews/art.shtml?num=49808