Integrazione di un supporto
flessibile per le politiche di sicurezza in Linux
Capitolo I
La NSA
ha lavorato con la SCC (Secure Computing Corporation) per sviluppare una architettura
MAC flessibile chiamata Flask.
La NSA ha in seguito implementato questa architettura all'interno di Linux
realizzando, così, un prototipo noto come Security-Enhanced Linux (SELinux).
Aggiungendo i meccanismi del MAC al sistema operativo, le vulnerabilità del
DAC possono essere arginate.
Le decisioni di accesso del MAC sono basate su etichette, che possono contenere
una varietà di informazioni rilevanti per la sicurezza. Una politica MAC è definita
da un amministratore e applicata a tutti i soggetti (processi) e a tutti gli
oggetti (file, sockets, interfacce di rete) nel sistema. Il MAC è in grado di
supportare un'ampia categoria di utenti in un sistema, e può isolare i danni
causati da un software malizioso.
L'architettura Flask é stata applicata ai maggiori sottosistemi del kernel
di Linux includendo anche l'integrazione del MAC per le operazioni sui processi,
files e sockets. In particolare NAI Labs ha implementato addizionali mandatory
access controls per il kernel, includendo controlli per i files systems
procfs e devpts. Anche la MITRE Corporation e la SCC hanno contribuito allo
sviluppo modificando alcuni programmi di utility.
Usando la flessibilità di SELinux si può configurare il sistema per supportare
un'ampia varietà di politiche di sicurezza:
- separazione delle politiche che possono applicare restrizioni
valide sui dati, stabilire ben definiti ruoli per gli utenti, o limitare
l'accesso a dati classificati;
- utili politiche di contenimento per restringere l'accesso
a web server solo a dati autorizzati e minimizzare i danni causati da virus
e altri codici maliziosi;
- politiche di integrità che permettono di evitare modifiche
non autorizzate ai dati e alle applicazioni;
- invocazioni di politiche che possono garantire il corretto
processamento dei dati.