Pregunta
(a) ¿Hay? y si es así, (b) ¿cuál es una forma estándar o aceptada para que los sistemas MAC traten con software complejo y en particular con Python, Bash y otros intérpretes? (en términos de creación de reglas para este tipo de software "complejo" y "versátil")
Por ejemplo, con python, me parece que no es práctico regular el acceso que recibe el proceso de python sobre la base de los ejecutables (que siempre serán los ejecutables de python, etc.). En el mejor de los casos, se regularía de acuerdo con la confiabilidad del código "python-script" involucrado (ya que esto también define los recursos necesarios).
Fondo
-
Con referencia a MAC (control de acceso obligatorio) aquí se pretende hacer referencia a cierto software como SELinux, grsecurity, TOMOYO, Apparmor y similares. (Todavía estoy luchando con el término correcto para referirme a esos conceptos y software, por eso lo expreso aquí, tratando de evitar la ambigüedad).
-
El MAC se concibe aquí como una herramienta / forma de mejorar la seguridad que va más allá de lo posible con el control de acceso discrecional (DAC).
-
Este "valor de seguridad adicional" se debe al control del acceso de una manera más detallada de lo que podría ser posible con el DAC. Como ejemplo, el acceso que recibe un software puede estar basado en algo más que solo el USUARIO con el que se inicia el proceso. Y, por supuesto, los archivos y recursos que pueden ser tocados por un determinado proceso están, en el mejor de los casos, ajustados al límite que el programa realmente necesita.
-
Se puede ver como un objetivo clave de un MAC para limitar el acceso al mínimo necesario.
-
Si limitar (por motivos de seguridad) el acceso de un programa a aquellos recursos que realmente solo necesita es algo que se desea de un sistema MAC, lo que parece más fácil / práctico para un software que tiene un alcance muy limitado. funcionalidad Del mismo modo, un software más versátil y complejo parece ser mucho más difícil de confinar y limitar.