Domanda
(a) C'è? e se sì (b) quale è un modo standard o accettato per i sistemi MAC di trattare software complessi e in particolare con Python, Bash e altri interpreti? (in termini di creazione di regole per questo tipo di software "complesso" e "versatile")
Per esempio con python, mi sembra poco pratico regolare l'accesso che il processo python riceve sulla base degli eseguibili (che saranno sempre gli eseguibili python ecc.). Nel migliore dei casi preferirebbe essere regolato in base all'affidabilità del codice "python-script" coinvolto (dato che questo definiva anche le risorse necessarie).
Sfondo
-
In riferimento a MAC (controllo di accesso obbligatorio) si intende fare riferimento a determinati software come SELinux, grsecurity, TOMOYO, Apparmor e simili. (Sto ancora lottando con il termine giusto per fare riferimento a quei concetti e software, ed è per questo che lo esprimo qui, cercando di evitare l'ambiguità.)
-
Il MAC è concepito qui per essere uno strumento / modo per migliorare la sicurezza che va in qualche modo oltre le cose possibili con il controllo di accesso discrezionale (DAC).
-
Questo "valore di sicurezza aggiuntivo" è causato controllando l'accesso in modo più dettagliato di quanto potrebbe essere possibile con il DAC. Ad esempio, l'accesso che un software riceve può basarsi su più di un semplice USER con cui il processo è iniziato. E naturalmente i file e le risorse che possono essere toccati da un determinato processo sono nel migliore dei casi adattati al limite essenziale di cui il programma ha effettivamente bisogno.
-
Può essere visto come un obiettivo chiave di un MAC per limitare l'accesso al minimo necessario.
-
Se limitare (per questioni di sicurezza) l'accesso di un programma a quelle risorse di cui ha effettivamente bisogno è qualcosa che è richiesto da un sistema MAC, questo sembra più facile / pratico per software che ha un limite molto limitato funzionalità. Allo stesso modo, software molto più versatile e complesso sembra essere molto più difficile essere limitato e limitato.