Sicurezza del File System



Documenti analoghi
Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.

Livelli del sottosistema di I/O

Fondamenti di GNU/Linux

Indice. Introduzione. Capitolo 1 Introduzione a Windows Server Edizioni di Windows Server

I sistemi operativi. Prof. Daniele Contarino

File System ext2. Struttura del filesystem ext2.

Il Sistema Operativo. Informatica Sistema Operativo 1

Corso di Sistemi Operativi I/II. Introduzione a Linux. Il File System. Ruggero Donida Labati

Architettura degli elaboratori Docente:

API Socket di Berkeley

Sistemi Operativi: Concetti Introduttivi

Sistema operativo & file system 1

Informatica di base 6/ed

DI GESTIONE E CONSERVAZIONE DEI DOCUMENTI

Implementazione del File System

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Input/Output. Livelli del sottosistema di I/O

Immagine Srl: realizzazione di una rete informatica interna. Case study.

Sommario. 1 La shell di Windows PowerShell... 1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Il Sistema Operativo

Il Sistema Operativo

interoperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.

Struttura interna del sistema operativo Linux

Transcript:

Sicurezza del File System Luigi Catuogno luicat@dia.unisa.it BARONISSI 30 maggio 2002 Cos è un file system Luigi Catuogno - Sicurezza del File System 2 1

Cos è il filesystem Una parte del sistema operativo Interfaccia con i dispositivi (ramdisk, dischi etc.) Organizzazione dei dati Accesso ai dati Interfaccia con le applicazioni Luigi Catuogno - Sicurezza del File System 3 Interfaccia con i dispositivi Traduzione delle richieste di accesso delle applicazioni (o del s.o.) in chiamate a basso livello al device driver del dispositivo Cache e buffer management Luigi Catuogno - Sicurezza del File System 4 2

Organizzazione dei dati Rappresentazione Indicizzazione/reperibilità Gestione dello spazio Ricerca ed allocazione Rilascio Luigi Catuogno - Sicurezza del File System 5 Organizzazione dei dati/2 Suddivisione (logica) del disco in blocchi Procedure per: Ricerca di un certo blocco Lettura/scrittura di dati nei blocchi Ricerca ed allocazione di blocchi liberi Recupero di blocchi non più utilizzati Controllo dell impiego di spazio Luigi Catuogno - Sicurezza del File System 6 3

Organizzazione dei dati/3 Dipende dal tipo di filesystem in uso (FAT32, NTFS, EXT2 ) Impostata sul disco all atto della formattazione Luigi Catuogno - Sicurezza del File System 7 Accesso ai dati Accesso ai dati: Memorizzazione Identificazione Lettura Scrittura Rimozione Luigi Catuogno - Sicurezza del File System 8 4

Accesso ai dati/2 Raggruppamento dei dati in file Identificazione dei file Associazione blocchi-file Associazione file-nome Raggruppamento dei file in directory Luigi Catuogno - Sicurezza del File System 9 Accesso ai dati/3 Operazioni sui file: Creazione/modifica Lettura/scrittura Rimozione esecuzione Luigi Catuogno - Sicurezza del File System 10 5

Interfaccia con le applicazioni I file system espongono per le applicazione un interfaccia composta da un insieme di funzioni che implementano le diverse operazioni di accesso Luigi Catuogno - Sicurezza del File System 11 Interfaccia con le applicazioni/2 Ad esempio il file system ext2 fornisce, tra le altre: ext2_read(), ext2_write(), ext2_open(), etc. Il set di funzioni è specializzato per il file system che lo implementa. Luigi Catuogno - Sicurezza del File System 12 6

Interfaccia con le applicazioni/3 Sistema operativo Ext2_read Ext2_write File system ext2 Device driver Read block x Write block 001 110 Dispositivo Luigi Catuogno - Sicurezza del File System 13 Interfaccia con le applicazioni/4 Sistema operativo File system ufs Device driver ufs_read ufs_write Dispositivo File system ext2 Device driver Dispositivo Luigi Catuogno - Sicurezza del File System 14 7

Interfaccia con le applicazioni/5 Appl. Virtual file system Sistema operativo File system ufs Device driver read write Dispositivo File system ext2 Device driver Dispositivo Luigi Catuogno - Sicurezza del File System 15 Virtual File System Fornisce una interfaccia omogenea per i diversi tipi di file system Si occupa di tradurre le system call dell applicazione utente nelle chiamate specialistiche del file system in uso Luigi Catuogno - Sicurezza del File System 16 8

File system distribuiti Appl. Virtual File system FS client RETE FS server File system ext2 Device driver Dispositivo Luigi Catuogno - Sicurezza del File System 17 Network File System (NFS( NFS) NFS NFS NFS client NFS client rete NFS server FS remoto Introdotto dalla SUN negli anni 80 Consente a più macchine (client) di condividere via rete un file system esportato da una di esse (server) Ogni client vede il file system importato (quasi) come se fosse uno dei suoi dischi Luigi Catuogno - Sicurezza del File System 18 9

Gestione dei file system Luigi Catuogno - Sicurezza del File System 19 Setup Installazione dell hardware Partizionamento e formattazione Configurazione Criteri di accesso Quote Condivisione Luigi Catuogno - Sicurezza del File System 20 10

Manutenzione Verifica dell integrità Crash recovery Backup Conservazione dei dati Data recovery Gestione accessi Utenti Condivisione Luigi Catuogno - Sicurezza del File System 21 Tecniche di protezione dei file 11

Cifratura manuale dei file L utente: Cifra i file riservati con apposite utility (es. il comando crypt di UNIX, PGP) Decifra i file protetti ogni volta che vuole accedervi Gestisce autonomamente strategie di protezione e chiavi di cifratura Luigi Catuogno - Sicurezza del File System 23 Cifratura manuale dei file Svantaggi: Durante il loro utilizzo i file non sono protetti L utilizzo dei file cifrati e piuttosto macchinoso L utente deve provvedere alla protezione di tutti i file creati dalle applicazioni La gestione delle chiavi (una per file) e completamente a carico dell utente Luigi Catuogno - Sicurezza del File System 24 12

Applicazioni che cifrano i dati Le applicazioni: Gestiscono le operazioni di cifratura sui file che utilizzano/producono Assistono l utente nella gestione dei file cifrati Luigi Catuogno - Sicurezza del File System 25 Applicazioni che cifrano i dati Svantaggi: L aggiornamento puo essere laborioso Lavorano soltanto sui loro file La gestione delle chiavi (una per applicazione) e ancora a carico dell utente Luigi Catuogno - Sicurezza del File System 26 13

Cifratura a livello di sistema Trasparente all utente ed alle applicazioni Maggiore robustezza Luigi Catuogno - Sicurezza del File System 27 Cifratura a livello di sistema Protezione hardware del disco Dischi virtuali protetti File System cifrato Luigi Catuogno - Sicurezza del File System 28 14

Cifratura a livello di sistema Dischi con protezione Hardware: Vantaggi: Buone prestazioni Affidabilita Trasparenti alle applicazioni Luigi Catuogno - Sicurezza del File System 29 Cifratura a livello di sistema Dischi con protezione Hardware: Svantaggi: Costo elevato Nessuna protezione dei backup Inadatti ad ambienti distribuiti Luigi Catuogno - Sicurezza del File System 30 15

Cifratura a livello di sistema Dischi virtuali protetti Vantaggi: Costo contenuto Flessibilita Trasparenti alle applicazioni Luigi Catuogno - Sicurezza del File System 31 Cifratura a livello di sistema Dischi virtuali protetti: Svantaggi: Nessuna protezione dei backup Inadatti ad ambienti distribuiti Luigi Catuogno - Sicurezza del File System 32 16

Il problema del backup utente chiave dati dati cipher amministratore Unita di backup Disco protetto Luigi Catuogno - Sicurezza del File System 33 Il problema della condivisione server utente chiave dati cipher dati client rete Disco protetto Luigi Catuogno - Sicurezza del File System 34 17

dove introdurre la cifratura? Livello utente singoli comandi applicazioni system calls Livello sistema virtual file system device driver hardware Luigi Catuogno - Sicurezza del File System 35 in questo modo: Non viene modificata l organizzazione logica del disco La cifratura ha luogo sul contenuto dei file, a valle delle system call di read/write Luigi Catuogno - Sicurezza del File System 36 18

Backup dei dati protetti utente chiave dati dati cipher amministratore Unita di backup Disco protetto dati illegibili Luigi Catuogno - Sicurezza del File System 37 Protezione dei dischi condivisi utente chiave dati cipher client dati rete amministratore manutenzione Disco protetto server Luigi Catuogno - Sicurezza del File System 38 19

Perché cifrare un file system? perché Si possono proteggere i file senza l intervento manuale dell utente L accesso ai file protetti non ne aumenta la vulnerabilita Non e necessario alcuna modifica alle applicazioni preesistenti Si mantiene la compatibilita con le normali procedure di manutenzione dei dischi Luigi Catuogno - Sicurezza del File System 40 20

Servizi e caratteristiche di un file system cifrato Principali servizi di un F.S. cifrato Protezione di dati e meta-dati Gestione delle chiavi Interfaccia con l utente/applicazione Condivisione dei file protetti Recupero delle chiavi Controllo sull integrita dei file Luigi Catuogno - Sicurezza del File System 42 21

Alcuni criteri di valutazione di un file system cifrato Sicurezza Efficienza Trasparenza Portabilita Luigi Catuogno - Sicurezza del File System 43 Sicurezza Scelta dell algoritmo di cifratura Scelta delle componenti fidate Rigore nell implementazione Luigi Catuogno - Sicurezza del File System 44 22

Efficienza Granularita della protezione Cosa proteggere, quando e quanto Semplicita del modello Dipendenza dall architettura/s.o. Utilizzo di sistemi di cache per i dati Impiego di risorse a basso livello Luigi Catuogno - Sicurezza del File System 45 Transparent Cryptographic File System (TCFS( TCFS) Universita di Salerno, 1996 Nasce per garantire la protezione dei dati in ambiente distribuito Cifra singoli file o directory E realizzato come modulo dei kernel Linux (2.2.x) Fornisce la condivisione di file o directory tra gruppi di utenti Luigi Catuogno - Sicurezza del File System 46 23

Network File System (NFS( NFS) utente dati disco remoto disco condiviso dati Client NFS client rete Server NFS server Luigi Catuogno - Sicurezza del File System 47 utente Architettura di TCFS amministratore dati chiavi disco remoto Client TCFS dati manutenzione disco condiviso Server NFS dati client rete server Luigi Catuogno - Sicurezza del File System 48 24

Architettura di TCFS: client TCFS client: riproduce tutti i servizi di un NFS, e realizzato come modulo del kernel Utility di interfaccia Luigi Catuogno - Sicurezza del File System 49 Architettura di TCFS: : server NFS server standard Luigi Catuogno - Sicurezza del File System 50 25

utente Accesso a file su TCFS amministratore dati chiavi disco remoto Client TCFS dati manutenzione disco condiviso dati Server NFS client rete server Luigi Catuogno - Sicurezza del File System 51 Predisposizione di un filesystem TCFS client /home/ciccio rete server /export/ciccio Client TCFS dati dati Server NFS Luigi Catuogno - Sicurezza del File System 52 26

Gestione degli account tcfsadduser ciccio user ciccio was successfully created tcfsrmuser ciccio Luigi Catuogno - Sicurezza del File System 53 Creazione della chiave tcfsgenkey password:(si inserisce la password di sistema) please press 10 keys:(dieci tasti a caso) Luigi Catuogno - Sicurezza del File System 54 27

Inizio di una sessione tcfsputkey password: (si inserisce la password di sistema) Luigi Catuogno - Sicurezza del File System 55 Creazione di una directory cifrata mkdir /home/ciccio/privato chattr +x /home/ciccio/privato Luigi Catuogno - Sicurezza del File System 56 28

Creazione di un file cifrato mkdir /home/ciccio/privato2 cd /home/ciccio/privato2 cp /etc/passwd./prova chattr +x prova Luigi Catuogno - Sicurezza del File System 57 Accesso ad una directory cifrata cd /home/ciccio/privato echo ciao >saluti cat saluti ciao Luigi Catuogno - Sicurezza del File System 58 29

Termine della sessione tcfsrmkey cd /home/ciccio/privato permission denied cd /home/ciccio/privato2 cat prova permission denied Luigi Catuogno - Sicurezza del File System 59 Accesso alla directory sottostante ls /export/ciccio/privato dksdhg8sdjk cat /export/ciccio/privato/dksdhg8sdjk alksfhuih835lki&*(35oihjs ls /export/ciccio/privato2 prova cat /export/ciccio/privato2/prova dfgsd88dsfp{ksf}kjmn$# Luigi Catuogno - Sicurezza del File System 60 30

Condivisione di file cifrati E possibile effettuare la condivisione di file tra gruppi di utenti secondo lo schema a soglia (n,k) In un gruppo di n utenti, per consentire la fruibilita dei file condivisi, almeno k di esse deve fornire a TCFS la sua porzione Luigi Catuogno - Sicurezza del File System 61 Creazione di account di gruppo tcfsaddgroup -g gruppo il sistema chiede all utente il numero di componenti del gruppo, il valore della soglia, e le uid degli utenti group gruppo was successfully created tcfsrmgroup -g gruppo Luigi Catuogno - Sicurezza del File System 62 31

Inizio di una sessione di gruppo tcfsputkey -g gruppo password: (si inserisce la password di sistema) La chiave di cifratura per il gruppo indicato, sara attiva solo quando un numero di componenti pari al valore della soglia, ha effettuato l operazione Luigi Catuogno - Sicurezza del File System 63 Creazione di un file condiviso mkdir /home/ciccio/privato2 cd /home/ciccio/privato2 cp /etc/passwd./prova chattr +g prova Luigi Catuogno - Sicurezza del File System 64 32

termine di una sessione di gruppo tcfsrmkey -g gruppo La chiave di cifratura per il gruppo indicato, sara disattivata solo quando il numero di componenti che hanno fornito la loro porzione di chiave, risultera inferiore al valore della soglia Luigi Catuogno - Sicurezza del File System 65 TCFS: : sicurezza Utilizza DES, 3DES, RC5, il motore di cifratura e modulare Luigi Catuogno - Sicurezza del File System 66 33

TCFS: : sicurezza/2 Nessun nessun dato/meta-dato circola in chiaro fuori dalla zona fidata Le chiavi di cifratura non escono dalla zona fidata Non e possibile, sul server, accedere al contenuto dei file cifrati Luigi Catuogno - Sicurezza del File System 67 TCFS: : trasparenza L utente deve ricordare solo la sua password di sistema Non occorrono modifiche agli applicativi Compatibilita con le operazioni di manutenzione del disco (fsck, backup, etc.) Luigi Catuogno - Sicurezza del File System 68 34

TCFS: : efficienza Scalabilita della cifratura (possono coesistere sul filesystem file protetti e non) I tempi di accesso(al netto della cifratura) sono confrontabili con quelli di NFS Luigi Catuogno - Sicurezza del File System 69 TCFS: portabilita TCFS gira sui sistemi Linux (kernel 2.2.x), necessita di rimaneggiamenti ad ogni upgrade del kernel Puo fungere da server, qualsiasi macchina server NFS. Luigi Catuogno - Sicurezza del File System 70 35

TCFS: : inoltre E stato realizzato un prototipo di TCFS per i sistemi operativi NetBSD ed OpenBSD Non sono previsti meccanismi di keyrecovery Luigi Catuogno - Sicurezza del File System 71 36