Linux con seguridad mejorada


Security-Enhanced Linux ( SELinux ) es un módulo de seguridad del kernel de Linux que proporciona un mecanismo para admitir políticas de seguridad de control de acceso , incluidos los controles de acceso obligatorios (MAC).

SELinux es un conjunto de modificaciones del kernel y herramientas de espacio de usuario que se han agregado a varias distribuciones de Linux . Su arquitectura se esfuerza por separar la aplicación de las decisiones de seguridad de la política de seguridad y agiliza la cantidad de software involucrado en la aplicación de la política de seguridad. [3] [4] Los conceptos clave que subyacen a SELinux se remontan a varios proyectos anteriores de la Agencia de Seguridad Nacional (NSA) de los Estados Unidos.

un conjunto de parches para el kernel de Linux y utilidades para proporcionar una arquitectura de control de acceso obligatorio (MAC) fuerte, flexible y en los principales subsistemas del kernel. Proporciona un mecanismo mejorado para hacer cumplir la separación de la información en función de los requisitos de confidencialidad e integridad, lo que permite abordar las amenazas de manipulación y eludir los mecanismos de seguridad de la aplicación y permite limitar el daño que pueden causar las aplicaciones maliciosas o defectuosas. Incluye un conjunto de archivos de configuración de políticas de seguridad de muestra diseñados para cumplir objetivos de seguridad comunes y de propósito general.

Un kernel de Linux que integra SELinux impone políticas de control de acceso obligatorias que limitan los programas de usuario y los servicios del sistema, así como el acceso a archivos y recursos de red. Limitar los privilegios al mínimo requerido para trabajar reduce o elimina la capacidad de estos programas y demonios de causar daños si fallan o se ven comprometidos (por ejemplo, a través de desbordamientos de búfer o configuraciones incorrectas). Este mecanismo de confinamiento opera independientemente de los mecanismos de control de acceso ( discrecionales ) tradicionales de Linux. No tiene el concepto de un superusuario "raíz" y no comparte las conocidas deficiencias de los mecanismos de seguridad tradicionales de Linux, como la dependencia de los binarios setuid / setgid .

La seguridad de un sistema Linux "no modificado" (un sistema sin SELinux) depende de la corrección del kernel, de todas las aplicaciones privilegiadas y de cada una de sus configuraciones. Una falla en cualquiera de estas áreas puede permitir el compromiso de todo el sistema. Por el contrario, la seguridad de un sistema "modificado" (basado en un núcleo SELinux) depende principalmente de la corrección del núcleo y su configuración de política de seguridad. Si bien los problemas con la corrección o configuración de las aplicaciones pueden permitir el compromiso limitado de programas de usuario individuales y demonios del sistema, no representan necesariamente una amenaza para la seguridad de otros programas de usuario y demonios del sistema o para la seguridad del sistema en su conjunto.

Desde una perspectiva purista, SELinux proporciona un híbrido de conceptos y capacidades extraídas de controles de acceso obligatorios, controles de integridad obligatorios , control de acceso basado en roles (RBAC) y arquitectura de aplicación de tipos . Las herramientas de terceros permiten crear una variedad de políticas de seguridad.


sestatusmostrando el estado de SELinux en un sistema