Как отключить возможность установки модуля ядра в операционной системе на основе Unix?

Чтобы сделать так, как просили, достаточно изменить += на =.

Вместо того, чтобы добавлять к существующему значению каждое найденное истинное значение, если каждый раз перезаписывать последнее истинное значение новым, то после завершения цикла последнее истинное значение будет единственным в $new_file.

1
03.01.2020, 12:59
2 ответа

Есть несколько вещей, которые вы могли бы сделать:

Блокировать загрузку модуля ядра до перезагрузки системы

Просто запуститеecho 1 > /proc/sys/kernel/modules_disabled

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

Это по-прежнему позволяет загружать модули во время загрузки, но позволяет заблокировать их после загрузки всех необходимых модулей.

Убедитесь, что загружаются только надежные модули.

Эти методы позволят вам не только съесть свой пирог, но и съесть его:

Если в вашей системе используется прошивка UEFI и включена безопасная загрузка, фактически требованием сертификации безопасной загрузки является то, что загрузчик не должен допускать выполнения неподписанного кода ядра. Большинство дистрибутивов, поддерживающих безопасную загрузку, распространят это и на модули ядра, используя подпись модуля ядра (опции компиляции ядра CONFIG_MODULE_SIG=yиCONFIG_MODULE_SIG_FORCE=y).

Или, если вы компилируете свое собственное ядро, вы можете включить параметр компиляции ядра CONFIG_SECURITY_LOADPIN, который добавляет требование, чтобы все модули ядра исходили из одной файловой системы. Это может быть полезно, если вы разделили все пользовательские -доступные для записи и временные каталоги в отдельные файловые системы, или даже если ваша корневая файловая система доступна для чтения -только при заблокированном -неактивном использовании.

И, конечно же, есть вариант жесткого -ядра...

Создайте собственное собственное ядро ​​со всеми необходимыми встроенными драйверами -и полностью отключите функциональность модуля

Это старая -школа, но она все еще применима, если конфигурация вашего оборудования очень стабильна.

4
27.01.2020, 23:22

Вы не можете полностью отключить «модули _отключены» -ЛКМ. На самом деле, вы можете отключить его, но если какой-то пользователь имеет root-доступ к машине, эта магия будет бесполезна. Решение состоит в том, что :вы должны скомпилировать свой собственный проект ядра Linux, и вы должны полностью отключить «модули _отключены» в меню «Включить загружаемые модули для поддержки». https://github.com/nu11secur1ty/Linux_hardening_and_security/tree/master/Kernel-sec-modules_by_nu11secur1ty/linux-5.1.1/kernelБР

-1
27.01.2020, 23:22

Теги

Похожие вопросы