La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Security Enhanced Linux (Selinux) A cura di : De Pascale Filippo 1.

Presentazioni simili


Presentazione sul tema: "Security Enhanced Linux (Selinux) A cura di : De Pascale Filippo 1."— Transcript della presentazione:

1 Security Enhanced Linux (Selinux) A cura di : De Pascale Filippo 1

2 Che cosa è? Patch di sicurezza al kernel di linux Sviluppato dalla National Security Agency Principalmente implementa un controllo degli accessi di tipo mandatorio (MAC) Non è un nuovo sistema operativo ma una modifica del kernel originale di linux 1

3 Perche? Per rimediare ai limiti di sicurezza dei moderni sistemi operativi Negli SO moderni le regole di accesso sono gestite dal Discretionary Access Control (DAC)

4 DAC Software (ovviamente…) Da la possibilita al proprietario di un file o di una directory ( o equivalenti ) di permettere o negare laccesso a quella particolare risorsa agli altri utenti In un sistema con DAC I permessi di accesso possono essere modificati ( revocati, aggiunti ecc…) da un processo con lo stesso User Identifier del proprietario di quella risorsa, oppure con UID 0 ( root )

5 Il DAC non basta Decisioni di accesso basate solo sullidentità dellutente e su ciò che possiede nel sistema L amministratore del sistema ne ha il completo controllo

6 Mandatory Access Control Usato per limitare l accesso agli oggetti Basato sulla sensibilità delle informazioni contenute negli oggetti e sulle autorizzazioni dei soggetti per accedere a tali informazioni sensibili In un sistema con MAC ad un file viene assegnata unetichetta di sicurezza basata sullimportanza delle informazioni contenute nel file Ogni etichetta ha un certo livello di sicurezza

7 Mandatory Access Control Il MAC non si cura di chi sia il proprietario del file, o se lID del processo, che ha effettuato una richiesta, è 0 (root) Un processo che ha etichetta di sicurezza di livello inferiore a quella del file non può leggere il file Un processo che ha etichetta di sicurezza diversa da quella del file non può scrivere il file

8 Mandatory Access Control Decisioni di accesso basate su etichette di sicurezza Lamministratore non ha più il controllo assoluto (il concetto di root cosi come lo conosciamo non esiste più)

9 Flexible MAC Realizzato dalla National Security Agency (NSA) in collaborazione con la Secure Computing Corporation (SCC) Ottenuto sulla base del lavoro fatto sul Type Enforcement (TE) Basato sullarchitettura FLASK

10 Architettura FLASK

11 Definisce due tipi di dati indipendenti per le etichette di sicurezza: Contesto di sicurezza: rappresentazione delletichetta tramite una stringa di lunghezza variabile; Identificatore di sicurezza (SID): intero mappato dal SS in un contesto di sicurezza.

12 Object Manager LObject Manager gestisce lassociazione delle etichette di sicurezza agli oggetti LObject Manager richiede unetichetta per un nuovo oggetto al SS LObject Manager consulta lAVC per ottenere le decisioni di accesso dal SS

13 Access Vector Cache (AVC) Provvede al caching delle decisioni di accesso computate dal SS per ottimizzare le prestazioni di questo meccanismo di sicurezza Fornisce linterfaccia agli Object manager del kernel per verificare I permessi e notificare allAVC stesso le operazioni completate Fornisce linterfaccia allSS per gestire la cache in base alle modifiche delle politiche

14 Security Server E un elemento del kernel che fornisce le decisioni delle politiche di sicurezza per gli object manager, mantenendo questi indipendenti dalla specifica politica

15 Flessibilita per le etichette 1.Un object manager richiede al SS unetichetta per un nuovo oggetto 2.Il SS produce un etichetta in base al soggetto che la vuole creare, alloggetto e alla classe del nuovo oggetto 2a.Per lesecuzione di programmi la nuova etichetta viene fornita in base alletichetta corrente del processo e alletichetta del programma eseguibile 2b.Per la creazione di file in base alletichetta del processo creante, a quella della parent directory, ed al tipo di di file che deve essere creato

16 Flessibilita nelle decisioni daccesso Un object manager consulta il SS per ottenere una decisione di accesso basata su di un paio di etichette e una classe di oggetto Il paio di etichette normalmente sono : 1.quella del soggetto 2.quella delloggetto

17 Flessibilita nelle decisioni daccesso Ogni classe ha un set di permessi associati che sono rappresentati da una bitmap detta Access Vector Flask definisce un permesso differente per ogni servizio Quando un servizio accede a piu oggetti, definisce un permesso separato per contrallare laccesso ad ogni oggetto

18 Supporto per I cambi di politica Quando lAVC riceve la notifica di un cambio di politica di sicurezza, aggiorna il proprio stato e in seguito invoca le funzioni di callback registrate da un object manager in modo che anche I permessi nello stato di questo vengano aggiornati

19 Decisioni di labeling Interfaccia ed esempio di chiamata per ottenere una security label.

20 Decisioni di accesso Interfaccia per ottenere le decisioni di accesso dal security server.

21 Selinux:controllo dei files SELinux etichetta e controlla gli open file descriptions poiché essi possono essere ereditati attraverso execve o trasferiti tramite socket UNIX IPC Un open file description è etichettato con il SID del suo processo creante SELinux lega etichette di sicurezza ai files e alle directories e controlla gli accessi ad essi

22 Selinux:controllo dei files Per ogni filesystem, SELinux memorizza una tavola di labeling persistente che specifica letichetta di sicurezza per ciascun file e directory in quel filesystem SELinux assegna un valore intero, detto persistent SID (PSID), a ciascuna etichetta di sicurezza usata da un oggetto in un filesystem

23 Selinux:controllo dei sockets Al socket layer, SELinux controlla la capacità dei processi di eseguire operazioni sui socket Al transport layer, SELinux controlla la capacità di spedire e ricevere messaggi sulle interfacce di rete SELinux controlla anche la capacità dei processi di configurare le interfacce di rete e di manipolare la tavola di routing del kernel

24 Selinux:controllo dei sockets I socket servono come proxies di comunicazione nel modello di controllo di SELinux I socket sono etichettati di default con letichetta del processo creante In SELinux i messaggi sono associati sia con letichetta del socket trasmittente, sia con letichetta distinta del messaggio Per default letichetta del messaggio è la stessa socket del trasmittente

25 Concetti Type Enforcement Domini per i processi e tipi per gli oggetti Specifica gli accessi consentiti dai domini ai tipi Specifica le interazioni ammissibili tra domini Specifica le transizioni permesse e automatiche tra domini Specifica le restrizioni di entrypoint e di esecuzione di codice per i domini

26 Domini Type Enforcement

27 Tipi Type Enforcement

28 Role Based Access Control Ruoli per i processi Specifica domini che possono essere accessi da ciascun ruolo Specifica ruoli che sono legittimi per ciascun utente Dominio iniziale associato con ciascun ruolo utente Le transizioni tra ruoli sono esplicite, per esempio login o newrole

29 Obiettivi di sicurezza Proteggere lintegrità del kernel, includendo i files di boot, i moduli e le variabili sysctl Proteggere lintegrità del software di sistema, i files di configurazione e i logs Proteggere il ruolo e il dominio dellamministratore Confinare i processi di sistema e i programmi privilegiati Proteggere dallesecuzione di software malizioso

30 Protezione dellintegrità dei files di sistema Tipi separati per programmi di sistema Tipi separati per i files di configurazione di sistema Tipi separati per le librerie condivise Tipi separati per i logs di sistema Tipi separati per linker dinamico

31 Restrizioni dei processi privilegiati La configurazione limita lo sfruttamento di difetti nei processi privilegiati definendo per loro domini separati Restringe i loro accessi ai minimi privilegi

32 Separazione dei processi Le interazioni tra processi in diversi domini sono limitate Controllo dellaccesso ai files temporanei

33 Protezione del dominio dellamministratore Limitazione del dominio ad eseguire solo tipi approvati Separazione dagli altri domini

34 References www.nsa.gov : qui si trovano tutte le info su cui si basa questa presentazione (in inglese).


Scaricare ppt "Security Enhanced Linux (Selinux) A cura di : De Pascale Filippo 1."

Presentazioni simili


Annunci Google