GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué proteger el kernel de Linux del usuario root?

Si un atacante obtiene la raíz, ¿no es dueño de la máquina incluso sin acceso al kernel, haciendo cosas como modificar binarios?

Tal vez tal vez no. Con SELinux, puede restringir el acceso a los dispositivos de bloqueo, incluso para el usuario raíz. Por lo tanto, si su partición raíz es de solo lectura (y el sistema se ejecuta con OverlayFS para proporcionar modificaciones no persistentes), proteger el kernel de la raíz puede garantizar un estado consistente al reiniciar, incluso si la máquina se ha visto comprometida al principio. nivel raíz.

Mientras que si el kernel no está protegido del usuario raíz, no puede tener tales garantías.


Sin arranque verificado, junto con módulos verificados y kexec le dará al kernel una mejor oportunidad de defenderse contra un ataque frente a una escalada de privilegios. De forma predeterminada, las dos funciones están deshabilitadas:

kexec_load_disabled:

Una palanca que indica si la llamada al sistema kexec_load se ha deshabilitado. Este valor predeterminado es 0 (falso:kexec_load habilitado), pero se puede establecer en 1 (verdadero:kexec_load deshabilitado). Una vez que es verdadero, kexec ya no se puede usar y el conmutador no se puede volver a establecer en falso. Esto permite que se cargue una imagen kexec antes de deshabilitar la llamada al sistema, lo que permite que un sistema configure (y luego use) una imagen sin que se modifique. Generalmente se usa junto con el sistema "modules_disabled".

módulos_deshabilitados:

Un valor de alternancia que indica si los módulos pueden cargarse en un kernel modular. Esta opción está desactivada de forma predeterminada (0), pero se puede configurar como verdadera (1). Una vez que sea verdadero, los módulos no pueden cargarse ni descargarse, y la alternancia no puede volver a establecerse en falso. Generalmente se usa con el conmutador "kexec_load_disabled".


Linux
  1. Analizar el kernel de Linux con ftrace

  2. Por qué hice el cambio de Mac a Linux

  3. ¿Por qué el usuario raíz necesita permiso de Sudo?

  4. Linux:¿por qué el directorio raíz se indica con un signo /?

  5. Linux:¿por qué existe una política de kernel de Linux para nunca romper el espacio del usuario?

Mi historia de Linux:de usuario de Linux a colaborador

¿Cómo deshabilitar el inicio de sesión SSH para el usuario raíz en Linux?

¿Cómo funciona internamente copy_from_user del kernel de Linux?

¿Por qué el usuario más poderoso en un sistema Unix/Linux se llama “root”?

¿Cómo puedo reservar un bloque de memoria del kernel de Linux?

¿Qué impide que las distribuciones utilicen el último kernel de Linux?