LKRG, модуль, предназначенный для обнаружения и блокировки атак и нарушений в ядре Linux.

В рамках проекта Openwall выпустила релиз модуля ядра LKRG 0.8 (Linux Kernel Runtime Guard), предназначен для обнаружения и блокировки атак y нарушения целостности основных конструкций.

Модуль подходит как для организации защиты от уже известных эксплойтов для ядра Linux (например, в ситуациях, когда обновление ядра в системе проблематично), что касается противодействия эксплойтам для неизвестных уязвимостей.

Что нового в LKRG 0.8?

В этой новой версии изменено позиционирование проекта LKRG, чточас не разделен на отдельные подсистемы для проверки целостности и определения использования эксплойтов, он представлен как законченный продукт для выявления атак и различных нарушений целостности;

Что касается совместимости этой новой версии, мы можем обнаружить, что он совместим с ядрами Linux от 5.3 до 5.7а также ядра, скомпилированные с агрессивной оптимизацией GCC, без параметров CONFIG_USB и CONFIG_STACKTRACE или с опцией CONFIG_UNWINDER_ORCа также с ядрами, где нет функций, перехваченных LKRG, если можно обойтись без них.

В добавок к экспериментальная поддержка 32-битных платформ ARM (протестировано на Raspberry Pi 3 Model B), а для ранее доступной поддержки AArch64 (ARM64) дополняется совместимостью с Raspberry Pi 4.

Кроме того, добавлены новые крючки, которые включают обработчик вызова «hook ()», чтобы лучше идентифицировать уязвимости, которыми манипулируют «возможности», а не идентификаторы процесса.

В системах x86-64 проверяется и применяется бит SMAP. (Предотвращение доступа в режиме супервизора), dпредназначен для блокировки доступа к данным в пользовательском пространстве из привилегированного кода, выполняемого на уровне ядра. Защита SMEP (Supervisor Mode Execution Prevention) была реализована ранее.

Это было повышенная масштабируемость базы данных отслеживания процессов: вместо одного дерева RB, защищенного спин-блокировкой, задействована хеш-таблица из 512 деревьев RB, защищенных 512 блокировками чтения и записи соответственно;

Реализован и включен режим по умолчаниюв котором проверка целостности идентификаторов Обработка часто выполняется только для текущей задачи, а также опционально для запущенных задач (пробуждение). Для других задач, которые находятся в приостановленном состоянии или которые работают без вызова API ядра, управляемого LKRG, проверка выполняется реже.

В добавок к файл модуля systemd был переработан для загрузки модуля LKRG на ранней стадии загрузки (параметр командной строки ядра может использоваться для отключения модуля);

Во время компиляции были проверены некоторые из обязательных настроек ядра CONFIG_ * для генерации значимых сообщений об ошибках, а не скрытых ошибок.

Из других изменений, которые выделяются в этой новой версии:

  • Добавлена ​​поддержка режимов ожидания (ACPI S3, Suspend to RAM) и Suspend (S4, Suspend to Disk).
  • Добавлена ​​поддержка DKMS в Makefile.
  • Предлагается новая логика для определения попыток выхода из ограничений пространства имен (например, из контейнеров Docker).
  • При этом конфигурация LKRG помещается на страницу памяти, обычно доступную только для чтения.
  • Вывод в журналы информации, которая может быть наиболее полезной для атак (например, адресная информация в ядре), ограничивается режимом отладки (log_level = 4 и выше), который по умолчанию отключен.
  • Новые параметры sysctl и module были добавлены для настройки LKRG, а также два sysctl для упрощенной настройки путем выбора из профилей, подготовленных разработчиками.
  • Настройки по умолчанию изменены для достижения более сбалансированного баланса между скоростью обнаружения нарушений и эффективностью реакции, с одной стороны, и влиянием на производительность и риском ложных срабатываний, с другой.
  • Согласно оптимизации, предложенной в новой версии, снижение производительности при применении LKRG 0.8 оценивается в 2.5% в режиме по умолчанию («тяжелый») и 2% в легком режиме («легкий»).

Если вы хотите узнать об этом больше, вы можете проконсультироваться подробности здесь. 


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

bool (истина)