Capítulo 11. Mejora de la seguridad con el subsistema de integridad del núcleo
Puedes aumentar la protección de tu sistema utilizando componentes del subsistema de integridad del kernel. En las siguientes secciones se presentan los componentes relevantes y se ofrece orientación sobre su configuración.
11.1. El subsistema de integridad del núcleo
El subsistema de integridad es una parte del núcleo que se encarga de mantener la integridad de los datos del sistema en general. Este subsistema ayuda a mantener el estado de un determinado sistema igual desde el momento en que se construyó, por lo que evita la modificación no deseada de archivos específicos del sistema por parte de los usuarios.
El subsistema de integridad del núcleo consta de dos componentes principales:
- Arquitectura de medición de la integridad (IMA)
- Mide el contenido de los archivos cada vez que se ejecutan o abren. Los usuarios pueden cambiar este comportamiento aplicando políticas personalizadas.
- Coloca los valores medidos dentro del espacio de memoria del kernel, impidiendo así cualquier modificación por parte de los usuarios del sistema.
- Permite a las partes local y remota verificar los valores medidos.
- Módulo de verificación ampliado (EVM)
- Protege los atributos extendidos de los archivos (también conocidos como xattr) que están relacionados con la seguridad del sistema, como las medidas de IMA y los atributos de SELinux, mediante el hashing criptográfico de sus valores correspondientes.
Tanto IMA como EVM contienen también numerosas extensiones de características que aportan funcionalidades adicionales. Por ejemplo:
- IMA-Appraisal
- Proporciona una validación local del contenido del archivo actual con respecto a los valores almacenados previamente en el archivo de medidas dentro de la memoria del núcleo. Esta extensión prohíbe que se realice cualquier operación sobre un archivo específico en caso de que la medida actual y la anterior no coincidan.
- Firmas digitales de EVM
- Permite el uso de firmas digitales a través de claves criptográficas almacenadas en el llavero del kernel.
Las extensiones de funciones se complementan entre sí, pero puedes configurarlas y utilizarlas de forma independiente.
El subsistema de integridad del núcleo puede aprovechar el módulo de plataforma de confianza (TPM) para reforzar aún más la seguridad del sistema. El TPM es una especificación del Trusted Computing Group (TCG) para importantes funciones criptográficas. Los TPM suelen construirse como hardware dedicado que se acopla a la placa base de la plataforma y evita los ataques basados en software al proporcionar funciones criptográficas desde una zona protegida y a prueba de manipulaciones del chip de hardware. Algunas de las características del TPM son
- Generador de números aleatorios
- Generador y almacenamiento seguro de claves criptográficas
- Generador de hashing
- Certificación a distancia
Recursos adicionales
- Para más detalles sobre el subsistema de integridad del kernel, véase el archivo official upstream wiki page.
- Para más información sobre el TPM, véase el Trusted Computing Group resources.