¿Qué es AppArmor y cómo mantiene la seguridad de Ubuntu?

imagen

AppArmor es una característica de seguridad importante que se incluye de forma predeterminada con Ubuntu desde Ubuntu 7.10. Sin embargo, se ejecuta silenciosamente en segundo plano, por lo que es posible que no sepa qué es ni qué está haciendo.

AppArmor bloquea los procesos vulnerables, restringiendo el daño que pueden causar las vulnerabilidades de seguridad en estos procesos. AppArmor también se puede usar para bloquear Mozilla Firefox para mayor seguridad, pero no lo hace de forma predeterminada.

¿Qué es AppArmor?

AppArmor es similar a SELinux, utilizado por defecto en Fedora y Red Hat. Si bien funcionan de manera diferente, tanto AppArmor como SELinux brindan seguridad de “control de acceso obligatorio” (MAC). En efecto, AppArmor permite a los desarrolladores de Ubuntu restringir las acciones que pueden realizar los procesos.

Por ejemplo, una aplicación que está restringida en la configuración predeterminada de Ubuntu es el visor de PDF Evince. Si bien Evince puede ejecutarse como su cuenta de usuario, solo puede realizar acciones específicas. Evince solo tiene los permisos mínimos necesarios para ejecutar y trabajar con documentos PDF. Si se descubriera una vulnerabilidad en el renderizador de PDF de Evince y abriera un documento PDF malicioso que se hiciera cargo de Evince, AppArmor restringiría el daño que Evince podría causar. En el modelo de seguridad tradicional de Linux, Evince tendría acceso a todo lo que usted tenga acceso. Con AppArmor, solo tiene acceso a las cosas a las que un visor de PDF necesita acceder.

AppArmor es particularmente útil para restringir software que puede ser explotado, como un navegador web o software de servidor.

Ver el estado de AppArmor

Para ver el estado de AppArmor, ejecute el siguiente comando en una terminal:

sudo apparmor_status

Verá si AppArmor se está ejecutando en su sistema (se está ejecutando de forma predeterminada), los perfiles de AppArmor que están instalados y los procesos confinados que se están ejecutando.

sudo apparmor_status

Perfiles de AppArmor

En AppArmor, los procesos están restringidos por perfiles. La lista anterior nos muestra los protocolos que están instalados en el sistema; estos vienen con Ubuntu. También puede instalar otros perfiles instalando el paquete apparmor-profiles. Algunos paquetes (software de servidor, por ejemplo) pueden venir con sus propios perfiles de AppArmor que se instalan en el sistema junto con el paquete. También puede crear sus propios perfiles de AppArmor para restringir el software.

Los perfiles se pueden ejecutar en «modo de queja» o «modo de aplicación». En el modo de aplicación, la configuración predeterminada para los perfiles que vienen con Ubuntu, AppArmor evita que las aplicaciones realicen acciones restringidas. En el modo de queja, AppArmor permite que las aplicaciones realicen acciones restringidas y crea una entrada de registro quejándose de esto. El modo de queja es ideal para probar un perfil de AppArmor antes de habilitarlo en el modo de aplicación; verá los errores que se producirían en el modo de aplicación.

Los perfiles se almacenan en el directorio /etc/apparmor.d. Estos perfiles son archivos de texto sin formato que pueden contener comentarios.

imagen

Habilitación de AppArmor para Firefox

También puede notar que AppArmor viene con un perfil de Firefox: es el archivo usr.bin.firefox en el directorio /etc/apparmor.d . No está habilitado de forma predeterminada, ya que puede restringir demasiado Firefox y causar problemas. La carpeta /etc/apparmor.d/disable contiene un enlace a este archivo, lo que indica que está deshabilitado.

Para habilitar el perfil de Firefox y confinar Firefox con AppArmor, ejecute los siguientes comandos:

sudo rm /etc/apparmor.d/disable/usr.bin.firefox

cat /etc/apparmor.d/usr.bin.firefox | sudo apparmor_parser –a

Después de ejecutar estos comandos, ejecute el comando sudo apparmor_status nuevamente y verá que los perfiles de Firefox ahora están cargados.

imagen

Para deshabilitar el perfil de Firefox si causa problemas, ejecute los siguientes comandos:

sudo ln -s /etc/apparmor.d/usr.bin.firefox /etc/apparmor.d/disable/

sudo apparmor_parser -R /etc/apparmor.d/usr.bin.firefox


Para obtener información más detallada sobre el uso de AppArmor, consulte la página oficial de la Guía del servidor de Ubuntu en AppArmor .