Módulos de seguridad de Linux (LSM): marco de ganchos de seguridad del kernel
Resumen del marco Linux Security Modules: propósito, arquitectura, implementaciones comunes, historia, usos y cómo LSM permite políticas de seguridad a nivel del kernel.
El sistema Linux Security Modules (LSM) es un mecanismo a nivel de kernel que proporciona un conjunto de ganchos en los que pueden realizarse comprobaciones de seguridad durante las operaciones básicas. En lugar de implementar una única política monolítica, LSM expone puntos dentro del kernel a los que pueden conectarse módulos de seguridad independientes para aplicar reglas. El diseño separa la funcionalidad genérica del kernel de la aplicación de políticas, de modo que puedan desarrollarse y mantenerse por separado distintos paradigmas de seguridad. Para un contexto técnico, véase el marco LSM.
Conceptos y arquitectura básicos
LSM funciona insertando pequeños ganchos de devolución de llamada en lugares estratégicos del kernel; por ejemplo, cuando se abren archivos, se crean o señalan procesos, se usan sockets o se gestionan paquetes de red. Cuando ocurre un evento enganchado, el kernel llama a las funciones del módulo registrado para determinar si la operación debe permitirse. El marco en sí no define políticas; los módulos implementan la lógica de política y almacenan el estado asociado, como etiquetas o reglas. El marco forma parte de la base de código más amplia del kernel de Linux y sigue las convenciones de codificación e interfaz del kernel.
Implementaciones comunes
- SELinux — un sistema de control de acceso obligatorio de uso extendido que asigna etiquetas a objetos y sujetos y aplica políticas complejas.
- AppArmor — confinamiento basado en perfiles que se centra en el control de acceso por rutas y en la facilidad de administración.
- Smack — un MAC más sencillo basado en etiquetas, diseñado para sistemas embebidos.
- TOMOYO — confinamiento centrado en el comportamiento que puede aprender políticas a partir de las acciones observadas de los programas.
- Landlock — un LSM pensado para permitir que los procesos sin privilegios creen sandbox ligeros.
Estas implementaciones ilustran distintos enfoques del control de acceso obligatorio, el sandboxing y la complejidad de las políticas. Algunas priorizan un control muy granular y lenguajes formales de políticas; otras buscan simplicidad y menor carga administrativa.
Historia y evolución
El mecanismo LSM se introdujo en el kernel principal como una capa general de ganchos para evitar incrustar un único modelo de seguridad en el núcleo. Desde su integración, desarrolladores y distribuciones han adoptado distintos módulos para satisfacer necesidades de seguridad diversas. Con el tiempo, el modelo ha evolucionado: al principio favorecía habilitar un gran módulo a la vez, pero trabajos posteriores mejoraron la compatibilidad y permitieron la acumulación o coexistencia de ciertos módulos para cubrir usos modernos como contenedores y confinamiento en el escritorio.
Usos e importancia
LSM se utiliza ampliamente para implementar control de acceso obligatorio, sandboxing de aplicaciones, reducción de privilegios y aislamiento de cargas de trabajo contenerizadas. Los administradores de sistemas recurren a módulos LSM para reducir la superficie de ataque, aplicar el principio de privilegio mínimo y cumplir requisitos normativos o de conformidad. Como el marco está licenciado bajo la GNU GPL, LSM y sus módulos se distribuyen y desarrollan junto con el resto del código fuente del kernel; véanse las notas de licencia del kernel en licencia del kernel.
Diferencias destacables
LSM se diferencia de otros mecanismos de control de acceso, como las ACL de POSIX o el control de acceso discrecional tradicional, en que opera a nivel de ganchos del kernel y admite políticas globales, a menudo obligatorias, que pueden imponerse sobre las decisiones del usuario. Es una infraestructura flexible más que un producto único: la elección del módulo a desplegar depende del equilibrio deseado entre expresividad, rendimiento y complejidad administrativa.
Para administradores y desarrolladores, entender dónde se producen los ganchos LSM y cómo los módulos almacenan y verifican atributos de seguridad es clave para diseñar políticas eficaces. La documentación y las herramientas específicas de cada módulo varían, por lo que los despliegues en producción suelen combinar la selección de LSM con estrategias de gestión de políticas, auditoría y pruebas para lograr el nivel de seguridad requerido.
Artículos relacionados
Autor
AlegsaOnline.com Módulos de seguridad de Linux (LSM): marco de ganchos de seguridad del kernel Leandro Alegsa
URL: https://es.alegsaonline.com/art/58325