В версии ядра Linux 5.4 появятся ограничения доступа суперпользователя к ядру

В версии ядра Linux 5.4 появятся ограничения доступа суперпользователя к ядру

В Linux 5.4 будет реализован набор патчей «lockdown».

В следующем релизе ядра Linux 5.4 будет реализован набор патчей «lockdown» от специалиста Red Hat Дэвида Хоуэллса (David Howells) и исследователя Google Мэтью Гаррета (Matthew Garrett). Набор патчей ограничивает доступ суперпользователя к ядру. Функционал «lockdown» был добавлен в LSM-модуль (Linux Security Module), который разделяет UID 0 и ядро, ограничивая тем самым некоторую функциональность нижнего уровня.

Злоумышленник, способный выполнить код с привилегиями суперпользователя, может также выполнить код на уровне ядра. Для этого ему нужно с помощью kexec заменить ядро или через /dev/kmem читать/записывать данные в памяти. Благодаря этому атакующий сможет обойти протокол UEFI Secure Boot или получить доступ к хранящимся на уровне ядра данным.

Режим «lockdown» ограничивает доступ к /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, отладочному режиму kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), интерфейсам ACPI и MSR-регистрам ЦП. Он также блокирует вызовы kexec_file и kexec_load и переход в спящий режим, а также ограничивает использование DMA для PCI-устройств. Кроме того, «lockdown» запрещает импорт кода ACPI из переменных EFI и не позволяет осуществлять действия с портами ввода/вывода.

Режим «lockdown» ограничивает только предусмотренные возможности доступа к ядру, однако не спасает от манипуляций, осуществляемых злоумышленником в результате эксплуатации уязвимостей. По умолчанию модуль находится в неактивном состоянии. Для его сборки нужно указать в kconfig опцию SECURITY_LOCKDOWN_LSM, а для активации – использовать параметр ядра "lockdown=", управляющий файл "/sys/kernel/security/lockdown" или сборочные опции LOCK_DOWN_KERNEL_FORCE_*.

Если вам нравится играть в опасную игру, присоединитесь к нам - мы научим вас правилам!

Подписаться