Sicurezza della Base di Dati

Slides:



Advertisements
Presentazioni simili
02/03/051P. Corsi – G. Franza – M. Ravazza 2 Marzo 2005 – EXPO dell'Educazione e del Lavoro La cultura delle certificazioni nel pluralismo delle soluzioni.
Advertisements

Linguaggi di programmazione
Introduzione ai DBMS I Sistemi di Gestione di Basi di Dati sono strumenti software evoluti per la gestione di grandi masse di dati residenti su memoria.
Utilizzo dei dati di AUDITING Lecce 21 Maggio 2004.
Sicurezza e concorrenza nelle basi di dati
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D3 Sicurezza e concorrenza nelle basi di dati.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Sicurezza e Policy in Active Directory
Sicurezza e Policy in Active Directory. Sommario Amministrazione della sicurezza in una rete Windows 2003 Amministrazione della sicurezza in una rete.
Amministrazione di una rete con Active Directory
Amministrazione di una rete con Active Directory.
Amministrazione di una rete con Active Directory
Interfaccia del file system
Interfaccia del file system
24/01/051 XML e i programmi di impaginazione. 24/01/052 Introduzione Panoramica sui maggiori programmi di impaginazione. Come usano XML.
La Modifica dei Dati in una Base Dati La modifica dei dati contenuti allinterno di una base dati è unoperazione delicata Infatti, ogni potenziale problema.
Seminario CNIPA – Roma 10 febbraio 2005 La Carta Nazionale dei Servizi ed il T-government – G. Manca La CNS: applicabilità, requisiti tecnici, aspetti.
Luglio 2004Memorie Tradizionali1 MEMORIE TRADIZIONALI Luglio 2004.
Per crittografia si intende la protezione
Chiara Francalanci Politecnico di Milano SMAU 22 Ottobre 2004.
La Sicurezza nella Rete Unitaria della Pubblica Amministrazione
David Clark e David Wilson 1987 Prof. Stefano Bistarelli
III Antonio Mattioli Non-Interferenza e Composizione delle Policy Indice - Modello di Bell-La Padula…………1 - Non-Interferenza………………… Unwinding.
Remote file access sulla grid e metodi di interconnesione di rete M. Donatelli, A.Ghiselli e G.Mirabelli Infn-Grid network 24 maggio 2001.
File System NTFS 5.0 Disco: unità fisica di memorizzazione
Security Enhanced Linux (Selinux) A cura di : De Pascale Filippo 1.
nome: sequenza di caratteri usata per denotare un oggetto
Lab. Calc. AA 2004/051 laboratorio di calcolo AA 2004/054 a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
TCP_Wrapper Le richieste per un determinato servizio (ad. es. telnet, ftp, rsh, etc.) vengono soddisfatte soltanto se lindirizzo IP del richiedente rientra.
Organizzazione della Memoria (Unix) Text contiene le istruzioni in linguaggio macchina del codice eseguibile, può essere condiviso in caso di processi.
Autorizzazione. Controllo degli accessi Per sistema per il controllo degli accessi, si intende: linsieme di meccanismi che garantiscono che le entità
JAVA Security. Jdk1.0 sandBox Ilo sistema di sicurezza JAVA si basa sulla struttura della seandBox. In base a tale politica tutte le applicazioni eseguite.
Le transazioni Itis Max Planck.
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Vincoli di integrità generici Con i costrutti visti sinora, non è sempre possibile definire tutti i possibili vincoli di integrità. Per questo esiste listruzione.
Manipolazione dei dati I comandi SQL che permettono di modificare il contenuto di una base di dati sono insertdeleteupdate insert ha la seguente sintassi:
AN FI Un denominatoe comune Linguaggi di programmazione Un denominatore comune.
Introduzione alle Basi di Dati. Overview Informazione = contenuto + struttura Informazione non strutturata Molto contenuto, poca struttura Un romanzo.
Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza.
XML e i programmi di impaginazione
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
02/04/051 Realizzato da Elisa, Greta, Silvie 02/04/052 Realizzato da Elisa, Greta, Silvie.
“Misure minime di sicurezza: adempimenti tecnici e organizzativi”
DAGLI ARCHIVI AI DATABASE
Fabrizio Grossi Verifica delle attività. L'operato degli amministratori di sistema deve essere oggetto, con cadenza almeno annuale, di un'attività
Docente: Roberto Basili Fond Inf (a.a ) Introduzione alla Progettazione Concettuale R. Basili.
Basi di Dati e Sistemi Informativi
Un problema importante
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
Laboratorio informatico I
La politica di sicurezza della Muraglia cinese Pietro Mazzoleni Lunedi’ 10 Dicembre 2001 Lunedi’ 10 Dicembre 2001 Corso di Basi di Dati Corso di Basi di.
SIARL ARCHITETTURA DEL SISTEMA E GESTIONE DELLA SICUREZZA Milano, 5 novembre 2003 Struttura Sistemi Informativi e Semplificazione.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D3 Sicurezza e concorrenza nelle basi di dati.
La sicurezza dei sistemi informatici. Il sistema deve soddisfare i seguenti requisiti di sicurezza (CIANA)  Confidenzialità (Riservatezza)  Integrità.
1 Il file system di Unix Caratteristiche generali dei FS comunemente usati da Unix/Linux.
Basi Dati e Laboratorio (6 + 6) crediti – curriculum Sistemi e Reti Basi dati 1 e Basi dati 2 prec.ordin. docenti: Barbara Demo Giuseppe Berio mail :
INFN & sicurezza: aspetti legali Roberto Cecchini Paestum, 11 Giugno 2003.
Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Terza lezione 19/5/2007.
Clark-Wilson model David Clark e David Wilson 1987 Prof. Francesca Lanci Stefano Bistarelli.
Corso di Laurea in Informatica
IL MODELLO DI BELL-LAPADULA
Alex Marchetti Infrastruttura di supporto per l’accesso a un disco remoto Presentazione del progetto di: Reti di calcolatori L-S.
Layered Grid Architecture. Application Fabric “Controlling elements locally”: Access to, & control of, resources Connectivity “Talking to Grid elements”:
SI Sicurezza della Base di Dati Mariagrazia Fugini Barbara Pernici Politecnico di Milano Sistemi Informativi
Procedure operative di sicurezza di un sistema informatizzato in un dipartimento servizi.
Procedure operative di sicurezza di un sistema informatizzato in un dipartimento servizi Corso aggiornamento ASUR10.
31 ottobre Security Assessment per Cassa Centrale Analisi delle modalità di deployment di server e di postazioni utente. Simulazione di consulente.
Sicurezza nei sistemi aziendali. La complessità dei sistemi informatici, la sempre maggiore integrazione tra elementi eterogenei, la crescita dell’accessibilità.
IV Corso di formazione INFN per amministratori di siti GRID Tutorial di amministrazione DGAS Giuseppe Patania.
Framework di sicurezza della piattaforma OCP (Identity & Access Management) Smart Cities and Communities and Social Innovation Bando MIUR D.D. 391/Ric.
Transcript della presentazione:

Sicurezza della Base di Dati Mariagrazia Fugini Barbara Pernici Politecnico di Milano Sistemi Informativi 2004-2005 SI 04-05 1 1 1

Argomenti Problemi di sicurezza e requisiti Politiche di sicurezza, DAC/ MAC Tipi di controlli e modelli per le basi dati Architettura di un DBMS con caratteristiche di sicurezza SI 04-05

Requisiti di protezione delle bd Protezione da accessi impropri (letture) Protezione da inferenza Integrità della bd: Protezione da modifiche improprie Integrità operativa dei dati (concurrency manager, locking back up e recovery) Integrità semantica (vincoli di integrità) Accountability e auditing (log) Autenticazione utente Individuazione e Gestione protetta di dati sensitibili Protezione multilivello (in ambienti militari/governativi) Confinamento: per evitare trasferimento di informazione lungo canali autorizzati (es. scambio file) canali di memoria canali covert (di cui non è palese l’esistenza) SI 04-05

Controlli sui dati 2) Controlli di inferenza accesso indiretto 1) Controlli di flusso: da oggetto X (autorizzato) a oggetto Y (non autorizzato) eseguite in sequenza: READ X , WRITE Y trasferiscono informazione dall’oggetto X all’oggetto Y 2) Controlli di inferenza accesso indiretto SELECT X FROM r WHERE Y = value Rivela che esistono n-tuple in r che verificano la condizione Y= value Se utente non è autorizzato su Y, riesce comunque a leggere il data set Y dati correlati z = t * k con t,k visibili, z non visibile z può essere inferito tramite la relazione aritmetica ‘*’ dati mancanti conoscere il nome di un oggetto anche senza poterne vedere il contenuto Inferenza Statistica: prevenuta mediante perturbazione dati controllo sulle query (sulle dimensioni del query set) SI 04-05

3) Controlli di accesso accesso negato richiesta di Procedure accesso Controllo accesso permesso modifica della richiesta Politiche di Sicurezza Regole di Accesso SI 04-05

Controlli di accesso: politiche Insieme di regole per limitare gli accessi: Pattern di Regola <soggetto, privilegio, oggetto> Policies: privilegio minimo (need-to-know) privilegio massimo (per favorire scambio di informazioni, es. in ambienti di ricerca – Unix è nato così) amministrazione centralizzata o decentralizzata (ownership degli utenti) amministrazione gerarchica decentralizzata/ autorizzazione cooperativa (sono richieste autorizzazioni congiunte per esguire operazioni, principio del binding of duties) politiche di delega dei privilegi (in sistemi discrezionali, tramite operazione GRANT) Sistemi aperti vs chiusi (quasi tutti sono chiusi) SI 04-05

Controllo accessi: sistema chiuso richiesta di accesso esiste una regola che autorizza l’accesso? sì no accesso permesso negato Regole di Accesso accessi autorizzati SI 04-05

Controllo accessi: sistema aperto richiesta di accesso Regole di Accesso esiste una regola che nega l’accesso? accessi negati no si accesso permesso accesso negato SI 04-05

Controllo di accesso discrezionale Gli utenti amministrano i dati che possiedono (concetto di proprietario) Il proprietario dei dati può autorizzare (GRANT) altri utenti all’accesso Il proprietario può definire il tipo di accesso da concedere ad altri (lettura, scrittura, esecuzione) Accessi selettivi (basati su nome, contenuto, parametri di sistema, storia, aggregazione di dati) SI 04-05

Controllo di accesso discrezionale Richiesta di accesso Regole di autorizzazione La richiesta è conforme alle regole di autorizzazione? no sì Accesso negato il predicato P della regola è soddisfatto? no sì Accesso negato Accesso autorizzato SI 04-05

Controllo di accesso mandatorio Per basi di dati con dati sensitivi (es., governative, militari) DAC non è sufficiente (per esempio, non si puà controllare il flusso da oggetto X a oggetto Y) Informazioni vitali, diversi livelli di sensitività, controlli sul flusso di dati e sul rilascio di dati, controlli sugli utenti Attacchi sofisticati da parte di utenti determinati (e.g., Cavalli di Troia) Politiche basate su classificazione di dati e utenti: Multilevel Access Control (MAC) SI 04-05 8 13 13

Controllo di accesso mandatorio Classificazione dei dati (livello di sensitività) Classificazione dei soggetti (clearance) Classe di sicurezza: <componente gerarchica, insieme di categorie> Ordinamento (parziale) tra le classi di sicurezza (relazione domina) I meccanismi di sicurezza devono garantire che tutti i soggetti abbiano accesso solo ai dati per cui possiedono la clearance appropriata (regole soggetti-oggetti) Non si possono propagare privilegi (No Grant) SI 04-05 14

Controllo di accesso mandatorio Richiesta di accesso Assiomi di sicurezza Classi di sicurezza La richiesta è conforme di soggetti/oggetti agli assiomi della politica mandatoria ? sì no Accesso autorizzato Accesso negato SI 04-05

MAC: Classificazione es. Nuclear, NATO, Intelligence Livelli di classificazione (Sensitività dati e clearance utenti): Unclassified, Confidential, Secret, Top Secret Categorie: es. Nuclear, NATO, Intelligence es. Produzione, Personale, Engineering TS S C U (Secret, {Nuclear, Intelligence}) (Secret, {Nuclear}) (Confidential, {Nuclear}) Legenda: è contenuto in SI 04-05 9 15 15

Sistemi mandatori: esempio Livelli di classificazione: 0 = Unclassified 1 = Confidential 2 = Secret 3 = Top Secret Categorie: Nuclear, Nato, Intelligence Produzione, Personale, Engineering, Amministrazione (per m aree, 2m possibili categorie) Relazione di ordinamento parziale sulle Security Classes (SC) : SC = (A,C) con A livello di classificazione, C categoria date SC = (A,C) e SC’ = (A’,C’) SC <= SC’ iff A<= A’ e C in C’ Esempi: (2, Nuclear) <= (3,(Nuclear,Nato)) verificata (2, (Nuclear,Nato) <= (3,Nato) non verificata SI 04-05

Tipi di controllo accessi alle bd

Accesso basato sul nome EMP PERSONNEL MANAGER name salary manager dept eval skill B 10k J comp g netw s A 20k J fin acc R 15k H comp m PC payroll D 18k J admin m MAILROOM CLERK SI 04-05 6 11 11

Accesso basato sul contenuto VISTE John può vedere solo gli impiegati del reparto 50 EMP CREATE VIEW D50 (Codice, Nome,Qualifica) AS SELECT Codice, Nome, Qualifica FROM EMP WHERE Codice_Reparto=50; GRANT SELECT ON D50 TO John JOHN SI 04-05

Accesso basato sul tipo di accesso SI 04-05

MODELLI DI SICUREZZA SI 04-05

Modelli di sicurezza per i dati Modelli discrezionali propagazione privilegi ownership (grant/revoke) Modelli mandatori soggetti oggetti classificazione e etichettatura SI 04-05

DISCREZIONALI: BASATI SU MATRICE DI ACCESSO ACL, CAPABILITIES MODELLI BASATI SUI RUOLI MANDATORI: MODELLI PER SISTEMI MULTILIVELLO BELL-LA PADULA (per sistemi operativi) SEA-VIEW (per basi di dati) SI 04-05

Modello a matrice di accesso Basato su Matrice A[s,o] = p con s soggetto (programma, processo,utente) o oggetto (programma,file,area di memoria centrale) p privilegio di accesso (read,write,execute,call) insieme dei soggetti e oggetti possono essere non disgiunti pensato per i sistemi operativi; matrice è sparsa (occupa memoria), per le bd servono anche condizioni di accesso (es. per vincoli sul contenuto) SI 04-05

Matrice di accesso: implementazione ACL ogni colonna della matrice di accesso è memorizzata con l’oggetto corrispondente a quella colonna (molto efficiente: ACL viene aperta con l’oggetto, es. File) Capability ogni riga della matrice di accesso è memorizzata con il soggetto corrispondente a quella riga (ogni soggetto ha un insieme di capabilities, o ticket di autorizzazione Tabella (triple, quadruple, in genere n-uple) generalmente utilizzato in DBMS SI 04-05

SISTEMI MULTILIVELLO Classe di sistemi : contenenti dati a diversi livelli di sensitività che permette l'accesso contemporaneo ai dati da parte di utenti con diverse autorizzazioni (clearances) e need-to-know che impedisce agli utenti accessi non autorizzati in base a regole di confronto livello/clearance Nati in ambienti militari o security-critical, oggi sono in fase di ricerca avanzata per applicazioni industriali e commerciali e per sistemi di comunicazioni SI 04-05

Condensata in No Read Up Simple Security (SS) Property (per la lettura): uno stato soddisfa la proprietà SS se, per ogni soggetto s che ha accesso READ, la clearance di s domina la classificazione dell'oggetto o: (s,o,x) soddisfa la proprietà SS relativa a F se x=READ e Fs (s) domina Fo(o) Condensata in No Read Up SI 04-05

Si condensa in No Write Down Star (*) Property (confinement property): per la scrittura un s non può avere accesso WRITE a un o a meno che la classificazione di o sia >= livello di sicurezza corrente di s: (s,o,x) è permessa se x=WRITE e Fc(s) <= Fo(o) s non può avere accesso READ/WRITE a un oggetto o a meno che la classificazione di o eguagli il livello di sicurezza corrente del soggetto: (s,o,x) è permessa se x=READ-WRITE e Fc(s) = Fo(o) Si condensa in No Write Down SI 04-05

Sicurezza e DBMS SI 04-05

Progetto di DBMS sicuri DBMS vs. SO granularità oggetti protetti correlazioni semantiche dei dati metadati molteplicità di tipi di dati oggetti statici e dinamici transazioni (multilivello in MAC) ciclo di vita dei dati SI 04-05

Progetto di DBMS sicuri Meccanismi di sicurezza nei DBMS: requisiti diverse granularità diversi modi di accesso e tipologie di controllo (covert channels, controlli di inferenza, controlli di flusso) polinstanziazione in MAC autorizzazione dinamica uniformità dei meccanismi assenza di back doors prestazioni ragionevoli SI 04-05

Sicurezza nei DBMS Regole di accesso Protezione e gestione delle autorizzazioni nei DBMS Meccanismi di sicurezza nei DBMS Autorizzazioni in RDBMS Basi di dati multilivello Architetture di DBMS sicuri SI 04-05 10 16 16

Transazioni come Soggetti/Oggetti accesso accesso SI 04-05

Esempi di regole di accesso Modello a 3 componenti: <subj,obj,right> nato per SO, esteso alle bd Modello a 4 componenti: <subj,obj,right, constraint> vincoli dipendenti dal contenuto subj obj right constraint mgr EMP ALL = mgr of NAME NAME READ NOT mgr of NAME ADDRESS employee NAME READ,UPDATE employee=NAME AGE NAME READ mgr(NAME)= AGE mgr(employee) SI 04-05

Regole di accesso per le bd Modello a 5 componenti: <gtor, gtee, obj, right, constraint, prop_rule> prop-rule: nessuna propagazione: solo privilegio USE propagazione incondizionata (UP): privilegi USE e PROPAGATE propagazione limitata (BP): orizzontale/verticale problema della modifica delle regole di accesso (REVOCA) SI 04-05

Authorization Table gtor gtee obj right constraint prop rule creator creator EMP ALL NO UP creator mgr EMP ALL =mgr(NAME) BP mgr employee NAME READ mgr(NAME) BP AGE =mgr(employee) ADDRESS creator employee NAME READ employee=NAME NO AGE UPDATE SI 04-05

Regole e Autorizzazioni Modalità di specifica di autorizzazioni di accesso ai dati nella BD: regole di accesso nel profilo utente nella descrizione dell’oggetto Meccanismi per la specifica di autorizzazioni: Query Language /Data Manipulation Language (DML) del DBMS Data Definition Language (DDL) del DBMS Comandi di SO SI 04-05

Regole e Autorizzazioni In RDBMS GRANT INSERT, SELECT ON EMP TO John Viste: EMP(Codice,Nome,Codice_Reparto,Mansione,Qualifica) CREATE VIEW D50(Codice,Nome,Qualifica) AS SELECT Codice,Nome,Qualifica FROM EMP WHERE Codice_Reparto=50 GRANT SELECT ON D50 TO John SI 04-05

Query modification GRANT SELECT ON EMP TO John WHERE Stipendio<1500 FROM EMP DBMS WHERE Stipendio < 1500 SI 04-05

Esempio Oracle In Oracle: soggetti: utenti, gruppi, ruoli gruppo PUBLIC ruoli definiti dall’amministratore (comando GRANT) organizzazione gerarchica dei ruoli (GRANT sui ruoli) comando SET ROLE per assegnazione di ruoli ad applicazioni (abilitazione attraverso password) oggetti: BD, tabelle, viste, cataloghi, procedure, etichette a livello di relazione SI 04-05

Oracle modi di accesso: select,insert,delete,update,alter, drop, index, reference, execute privilegi: connect: collegamento alla BD e esecuzione di operazioni autorizzate su tabelle resource: creazione di tabelle e concessione di autorizzazioni ad altri DBA: tutti i privilegi (anche creazione di user account) SI 04-05

Oracle audit: comando per l’amministratore; audit trail (SO/DB) amministrazione delle autorizzazioni: decentralizzata qualunque utente può essere autorizzato a creare una tabella utente che crea tabella ne è il proprietario il proprietario ha tutti i privilegi e può concedere (GRANT) privilegi sulla tabella eventualmente con GRANT OPTION solo il proprietario può cancellare la tabella SI 04-05

Autorizzazioni dinamiche: problema della revoca Ogni utente che possiede un privilegio P con GO su tabella T può revocare P Un utente autorizzato può revocare solo le autorizzazioni a lui concesse ------> problema: autorizzazioni concesse con GO richiedono REVOCA RICORSIVA (cascading) Revoca di P su T all’utente Y da parte dell’utente X ---------------> è come se tutte le autorizzazioni per P su T concesse da X a Y non fossero mai state concesse Uso di timestamp associati alle autorizzazioni revocate SI 04-05

Basi di dati multi-livello Regole per la classificazione degli elementi nella BD Multi-Level Relation (MLR) R(A1,C1,...,An,Cn, TC) SI 04-05

2.21 Esempio di relazione multilivello Name CName Department CDepartment Salary Csalary TC Bob S Dept1 S 10K S S Ann S Dept2 S 20K TS TS Sam TS Dept2 TS 30K TS TS SI 04-05

2.22 a) Istanza Secret Name CName Department CDepartment Salary Csalary TC Bob S Dept1 S 10K S S Ann S Dept2 S -- S S SI 04-05

2.22 b) Istanza TopS Name CName Department CDepartment Salary Csalary TC Bob S Dept1 S 10K S S Ann S Dept2 S 20K TS TS Sam TS Dept2 TS 30K TS TS SI 04-05