Защита от уязвимости Dirty Frag (Linux LPE Workaround)

Инструкция по временному устранению локального повышения привилегий (LPE) Dirty Frag путем ограничения доступа к пользовательским пространствам имен (user namespaces), которые используются для эксплуатации данной уязвимости.

Средний
2 минут чтения

Требования

  • Доступ к терминалу с правами root или sudo
  • ОС на базе ядра Linux (версии от 2017 года и новее)

Проверка текущего состояния user namespaces

Прежде всего, проверьте, разрешено ли создание пользовательских пространств имен в вашей системе. Если значение равно 1, система потенциально уязвима.

sysctl kernel.unprivileged_userns_clone

Временное отключение unprivileged user namespaces

Примените настройку в реальном времени, чтобы запретить непривилегированным пользователям создавать новые пространства имен. Это заблокирует большинство публичных PoC эксплойтов Dirty Frag.

sudo sysctl -w kernel.unprivileged_userns_clone=0

Закрепление настроек после перезагрузки

Чтобы защита оставалась активной после перезагрузки сервера, добавьте параметр в конфигурационный файл sysctl.conf.

echo 'kernel.unprivileged_userns_clone=0' | sudo tee -a /etc/sysctl.conf

Применение изменений из файла конфигурации

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

sudo sysctl -p

Проверка работоспособности контейнеров

Поскольку отключение user namespaces может повлиять на работу некоторых контейнеров (например, Rootless Docker или Podman), проверьте статус ваших сервисов.

sudo systemctl status docker || sudo systemctl status podman