Проект Openwall опубликовал выпуск модуля ядра LKRG 0.9.2 (Linux Kernel Runtime Guard), предназначенного для выявления и блокирования атак и нарушений целостности структур ядра. Например, модуль может защитить от несанкционированного внесения изменений в работающее ядро и попыток изменения полномочий пользовательских процессов (определение применения эксплоитов). Модуль подходит как для организации защиты от эксплоитов уже известных уязвимостей ядра Linux (например, в ситуациях когда в системе проблематично обновить ядро), так и для противостояния эксплоитам для ещё неизвестных уязвимостей. Код проекта распространяется под лицензией GPLv2. Об особенностях реализации LKRG можно прочитать в первом анонсе проекта.
Среди изменений в новой версии:
- Обеспечена совместимость с ядрами Linux с 5.14 по 5.16-rc, а также с обновлениями LTS-ядер 5.4.118+, 4.19.191+ и 4.14.233+.
- Добавлена поддержка различных конфигураций CONFIG_SECCOMP.
- Устранено ложное срабатывание из-за состояния гонки при обработке SECCOMP_FILTER_FLAG_TSYNC.
- Налажена возможность использования настройки CONFIG_HAVE_STATIC_CALL в ядрах Linux 5.10+ для блокирования состояний гонки при выгрузке других модулей.
- Добавлена поддержка параметра ядра “nolkrg” для деактивации LKRG на этапе загрузки.
- Обеспечено сохранение в логе имён модулей, заблокированных при использовании настройки lkrg.block_modules=1.
- Реализована поддержка sysctl-настроек в файле /etc/sysctl.d/01-lkrg.conf
- Добавлен файл конфигурации dkms.conf для системы DKMS (Dynamic Kernel Module Support), используемой для сборки сторонних модулей после обновления ядра.
- Улучшена и обновлена поддержка отладочных сборок и систем непрерывной интеграции.