¿AppArmor disminuye el rendimiento del sistema?

8

¿AppArmor disminuye el rendimiento del sistema? Tengo un sistema lento (CPU de 900 MHz) que tiene AppArmor porque se instaló por defecto. Me gustaría saber si se vuelve más rápido si lo elimino, la seguridad es menos importante que el rendimiento en ese sistema.

Petr
fuente
Probablemente no tanto como un proceso secuestrado que ejecuta el equivalente derm -rf --no-preserve-root /
jackweirdy
Pero, ¿cómo entraría un proceso así, por ejemplo, en un sistema integrado sin acceso a Internet y similares? ¿Y por qué en el mundo ejecutaría ejecutables desconocidos como usuario privilegiado?
Petr
Mi ejemplo fue un poco exagerado, aunque plausible en principio. Ningún acceso a Internet es una cuestión diferente, pero considere la mayoría de los enrutadores inalámbricos modernos, conmutadores administrados y sistemas SCADA: la mayoría ejecuta interfaces web para informes y / o configuración. Algunos incluso permiten a los usuarios autenticados modificar archivos de configuración o ejecutar comandos. Imagínese si se encontrara una debilidad en tales interfaces que permitiera a los usuarios no autenticados ejecutar comandos (probablemente como root, ya que los dispositivos integrados a menudo solo tienen un usuario). Desearía algún mecanismo para asegurarse de que las cosas cruciales (como / bin) no se eliminen.
jackweirdy
Si está considerando apparmor para un dispositivo de muy baja potencia sin absolutamente ningún acceso a la red, puede estar bien sin él. Si tiene acceso a la red, trátelo como si tuviera acceso a Internet.
jackweirdy

Respuestas:

2

Por supuesto, ralentiza su sistema. Hasta qué punto depende de lo que hagan sus aplicaciones. Los accesos al sistema de archivos son más lentos (porque deben verificarse) y todas las demás cosas que se pueden configurar. Pero si un proceso no abre archivos o sockets, etc., no debería verse afectado en absoluto (después de la inicialización).

Acabo de echar un vistazo a mi motor de búsqueda favorito (¿por qué no?) Y el resultado es que el impacto es irrelevante en la mayoría de los casos.

Hauke ​​Laging
fuente
Yo mismo busqué en Google esto, encontré un montón de enlaces que dicen que no lo afecta y un montón de enlaces que dicen lo contrario. No hay una respuesta clara hasta ahora ...
Petr
por cierto cuando Google por ahora, que en su mayoría sólo enlazar a esta pregunta, ni idea de lo que ha encontrado, pero no logro encontrar ninguna respuesta clara
Petr
@Petr Esa no es una medida independiente, por supuesto, pero los documentos de Novell dicen: "AppArmor no afecta notablemente el rendimiento". novell.com/documentation/opensuse103/opensuse103_reference/…
Hauke ​​Laging
ok, entonces, ¿vale la pena deshabilitarlo o no?
Petr
Parece que no tiene sentido deshabilitar AppArmor por razones de rendimiento.
Hauke ​​Laging
1

A menos que diga lo contrario, probablemente debería suponer que "ningún efecto notable" supone una CPU de 1.8 GHz + y aproximadamente 512 MB de memoria o más. Una de mis máquinas es 800MHz, 512MB de memoria. El efecto de cada proceso es notable. Solo tú puedes juzgar si vale la pena.

DocSalvager
fuente
1

Depende de lo que haga su programa: con qué frecuencia accede a los archivos, con qué frecuencia genera nuevos programas, cuánto tiempo se ejecuta, ... AppArmor se crea utilizando el [LSM] 1interfaz, que verifica cada llamada al sistema. AppArmor puede tener una memoria caché de acceso para acelerar los accesos recurrentes a los archivos o las solicitudes posteriores a un archivo ya abierto del mismo proceso, pero la sobrecarga más notable es durante la inicialización (se debe cargar el perfil de un programa y debe realizarse alguna inicialización de contexto ) Si está de humor para un juicio poco práctico de los peores casos, la siguiente es una figura que compara AppArmor con DAC (el modelo de permiso tradicional) durante un estudio en algún otro marco basado en LSM (CMCAP-Linux). El sistema era un Linux 4.4.6 arrancado en un Intel Core2 Duo E8400 que funciona a 3 GHz con 8 GB de RAM. El micro-punto de referencia consistió en 10 ejecuciones promedio (en bucles cerrados) de 10 millones de operaciones para la prueba de apertura + cierre, y 10 mil para las otras 2. Sobrecarga de llamadas del sistema: DAC vs. CMCAP-Linux vs. AppArmor

Butshuti
fuente