III Antonio Mattioli Non-Interferenza e Composizione delle Policy 12-12-2007 Indice - Modello di Bell-La Padula…………1 - Non-Interferenza…………………...4 - Unwinding.

Slides:



Advertisements
Presentazioni simili
Meccanismi di IPC Problemi classici di IPC
Advertisements

Sistemi di Classificazione usando NCD
Procedure e funzioni A. Ferrari.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
Il Sistema Operativo.
1 Processi e Thread Meccanismi di IPC, Inter Process Communication (1)
1 Processi e Thread Meccanismi di IPC (1). 2 Comunicazioni fra processi/thread Processi/thread eseguiti concorrentemente hanno bisogno di interagire per.
1 Il punto di vista Un sistema è una parte del mondo che una persona o un gruppo di persone, durante un certo intervallo di tempo, sceglie di considerare.
Configurazione & Programmazione PLC Siemens S7-300 Master DP
Lez. 41 Universita' di Ferrara Facolta' di Scienze Matematiche, Fisiche e Naturali Laurea Specialistica in Informatica Algoritmi Avanzati Programmazione.
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Università La Sapienza Web programming e programmazione multimediale 1 Web Programming e comunicazione multimediale Lezione 10: PHP.
Interfaccia del file system
Alberi binari di ricerca
La Modifica dei Dati in una Base Dati La modifica dei dati contenuti allinterno di una base dati è unoperazione delicata Infatti, ogni potenziale problema.
Argomenti dalla linea dei comandi Gli argomenti possono essere passati a qualsiasi funzione di un programma, compresa la main(), direttamente dalla linea.
Sicurezza della Base di Dati
Computational Learning Theory and PAC learning
Analisi e Sintesi di circuiti sequenziali
Algoritmi Politecnico di Milano
Algoritmi e strutture Dati - Lezione 7
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Ricerca della Legge di Controllo
Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Corso di Informatica Applicata Lezione 3 Università degli studi di Cassino Corso di.
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
Il Linguaggio Macchina
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
1 LINUX: struttura generale The layers of a UNIX system. User Interface.
CAPITOLO 7.
ARGONEXT Accesso Docente
Modulo 7 – reti informatiche u.d. 3 (syllabus – )
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Università degli Studi di Bari Laurea in Chimica Di spense di Informatica - Dott. F. Mavelli Programmare in Matlab Funzioni di Libreria Funzioni definite.
L’inventore del calcolatore odierno
CHI ERA ALAN TURING? Turing fece parte del team di matematici che, a partire dalla base di Bletchley Park, decodificarono i messaggi scritti dalle macchine.
Lo sviluppo del progetto informatico
Usability Lab 2007 Corso Laboratorio di Basi Dati II Interfacce Visuali Avanzate (AVI) Linguaggio di interrogazione iconico Prof. Flavio Fontana Usability.
Sistemi di elaborazione e trasmissione delle informazioni
Modulo 2 - U.D. 3 - L.4 Ernesto Damiani - Sistemi di eleborazione dell'informazione.
Programma di Informatica Classi Prime
1 Il Sistema Operativo: Esempio n Le operazioni effettuate sembrano abbastanza semplici ma … n Provocano una serie di eventi in cui vengono coinvolte sia.
Microsoft Access (parte 5) Introduzione alle basi di dati Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
La fruizione dei learning object e delle prove OCSE nell’ambiente.
UML.
PROGRAMMAZIONE IN LOGO
Introduzione all‘app Lync Windows Store Lync 2013.
Sistema Operativo (Software di base)
Luca Orrù 1 Input/Output. 2 SOMMARIO Organizzazione di sistema Trasferimento dati; Gestione I/O.
Gli Algoritmi L’algoritmo è un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si.
Riferimento rapido per l’app © 2013 Microsoft Corporation. Tutti i diritti riservati. Schermata iniziale di Lync I riquadri dell'hub a sinistra nella schermata.
Migliorare le prestazioni delle cache
Microsoft Access Maschere (II).
F. Orilia Logica F. Orilia
ESPANSIONE Personalizzare l’interfaccia utente 2010.
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
Automi temporizzati.
Esercizi.
Dal problema al programma
Cloud Tecno V. Percorso didattico per l’apprendimento di Microsoft Access 4 - Le maschere.
Microsoft Access Filtri, query. Filtri Un filtro è una funzione che provoca la visualizzazione dei soli record contenenti dati che rispondono a un certo.
Le basi di dati.
Istruzioni e algoritmi. Istruzioni Operative I passi elementari che compongono l’algoritmo sono le istruzioni. Distinguiamo: Istruzioni di input Istruzioni.
Logica Lezione 8, DISTRIBUIRE COMPITO 1.
Logica Lezione 11, Annuncio Non si terrà la lezione di Lunedì 16 Marzo.
Transcript della presentazione:

III Antonio Mattioli Non-Interferenza e Composizione delle Policy Indice - Modello di Bell-La Padula…………1 - Non-Interferenza………………… Unwinding Theorem……………….7 - Composizione di Sistemi…………..8 - Non-Deducibilità………………….11 - Non-Interferenza Forte……………13 - Conclusioni………………………..14 Intro Di solito le organizzazioni hanno policy differenti a seconda della struttura a cui sono assegnate. Se ci sono conflitti o necessità differenti, quale policy deve essere adottata? Si possono fondere due policy differenti?

1 - Proprietà di Sicurezza Discrezionale: utilizzo di una matrice per controllare gli accessi Modello di Bell - La Padula 2 É un modello di policy di sicurezza che definisce un insieme di regole di accesso ad informazioni riservate. Definizione Modalità di Accesso ai Dati Regole Top Secret Secret High Subjects Low Public Top Secret Secret High Objects Low Public Read Write Utilizza una classificazione di sicurezza per gli oggetti ed autorizzazioni per i soggetti. Una modalità di accesso ad un oggetto è permessa solo dopo la comparazione tra classificazione ed autorizzazione. (Livello di Sicurezza) - Proprietà di Sicurezza Semplice: un soggetto con un certo livello di sicurezza non può accedere ad oggetti a livelli di sicurezza superiori (no read-up) - *-property (proprietà-stella): un soggetto con un livello di sicurezza non può scrivere oggetti con livelli di sicurezza inferiori (no write-down) Accesso ai Dati

3 Non-Interferenza: Definizione 4 Un gruppo di utenti [...] non-interferisce con un altro gruppo di utenti se quello che il primo gruppo fa [...] non ha effetto su quello che il secondo gruppo può vedere [Goguen, Meseguer] Definizione VM A System Problema VM B CPU Sharing Comunicazione tra A e B t t2t2 t1t1 t0t0 A CPU =100% Send B=1 A CPU =0% Send B=0 A CPU =100% Send B=1 Il Sistema Interferenza La non-interferenza è un metodo alternativo per costruire modelli di policy di sicurezza Per ottenere una separazione netta tra i soggetti di un sistema si devono interrompere tutti i canali tra di loro, e non solo quelli che tradizionalmente permettono la trasmissione delle informazioni

1 - Proprietà di Sicurezza Semplice: un soggetto con un certo livello di sicurezza non può accedere ad oggetti a livelli di sicurezza superiori (no read-up) - *-property (proprietà-stella): un soggetto con un livello di sicurezza non può scrivere oggetti con livelli di sicurezza inferiori (no write-down) - Proprietà di Sicurezza Discrezionale: utilizzo di una matrice per controllare gli accessi Modello Bell - La Padula 2 É un modello di policy di sicurezza che definisce un insieme di regole di accesso ad informazioni riservate. Definizione Modalità di Accesso ai Dati Regole Top Secret Secret High Subjects Low Public Top Secret Secret High Objects Low Public Read Write Utilizza una classificazione di sicurezza per gli oggetti ed autorizzazioni per i soggetti. Una modalità di accesso ad un oggetto è permessa solo dopo la comparazione tra classificazione ed autorizzazione. (Livello di Sicurezza)

3 Non-Interferenza: Definizione 4 Un gruppo di utenti [...] non-interferisce con un altro gruppo di utenti se quello che il primo gruppo fa [...] non ha effetto su quello che il secondo gruppo può vedere [Goguen, Meseguer] Definizione VM A System Problema VM B CPU Sharing Comunicazione tra A e B t t2t2 t1t1 t0t0 A CPU =100% Send B=1 A CPU =0% Send B=0 A CPU =100% Send B=1 Il Sistema Interferenza La non-interferenza è un metodo alternativo per costruire modelli di policy di sicurezza Per ottenere una separazione netta tra i soggetti di un sistema si devono interrompere tutti i canali tra di loro, e non solo quelli che tradizionalmente permettono la trasmissione delle informazioni

5 Non-Interferenza 6 Ogni comando può produrre un output, però alcuni utenti non hanno le autorizzazioni per visualizzarlo Considerazioni Non-Interferenza: Esempio Esempio Consideriamo questo automa: -Lo stato è definito da due bit: H(igh) e L(ow); -Due comandi: xor0 e xor1; -Due utenti: Holly (che può leggere informazioni di tipo High e Low) e Lucy (che può leggere solo informazioni Low); -L automa mantiene lo stato con due bit (H,L). (0,0) (0,1) (1,0) (1,1) xor0 xor1 (0,0) (0,1) (1,0) (1,1) Gli output dell automa sono concatenati. L output per Holly è costituito da entrambi i bit (es. (0,1)) mentre per Lucy solo dal bit Low (es. (1)) Eseguiamo i comandi con alcuni stati: Questo è l Automa a Due Bit. Automa a Due Bit

7 Composizione di Sistemi 8 Unwinding Theorem Idea Se si riesce a provare che in una sequenza di comandi ogni singolo comando che modifica lo stato di un automa è sicuro, allora lo sarà anche tutta la sequenza Una transizione è consistente se per ogni c lo stato rimane equivalente rispetto a d Sia c un comando che secondo la policy r non ha nessun effetto sul dominio d. Se applicando c allo stato corrente non si ottiene alcun effetto su d, allora il sistema rispetta r. Sia r una policy, X un sistema consistente rispetto all output ed alle transazioni, e che rispetti al policy r. Allora X è sicuro ripetto alla non-interferenza Consistenza Transazione Unwinding Theorem Rispetto Policy Sistema Hughie Prendiamo in esame questo sistema: - Louie e Dewey elaborano a livello Low - Hughie elabora a livello High - Tutti possono leggere il buffer di output b L - C è un buffer b H per gli input di tipo High - Ci sono tre buffer b LH, b DH, b LDH che connetono i sistemi; possono essere scritti da Louie e Dewey e letti da Hughie - I buffer b DH e b LH hanno capacità 1 Louie Dewey bHbH bLbL b LH b LDH b DH

9 Composizione di Sistemi 10 Composizione di Sistemi In Azione In questo caso un input di tipo High viene copiato in un buffer che contiene dati di tipo Low. Questo sistema non è sicuro rispetto alla non-interferenza Hughie Louie Dewey Non-Interferenza Ognuno dei tre sistemi è sicuro rispetto alla non-interferenza: -Hughie non ha output, quindi gli input non possono interferire. -Louie e Dewey non hanno input, quindi non c è interferenza con gli output. Houghie legge un bit da b H, riceve un messaggio da b LH (se legge 0 da b H ) o da b DH (se legge 1 da b H ) e poi riceve da b LDH. Esempio -Luoie invia un messaggio a b LH. Il buffer è pieno -Louie invia un secondo messaggio a b LH -Louie manda uno 0 a b L -Luoie manda un messaggio a b DLH per segnalare ad Houghie che Louie ha completato un ciclo Dewey segue la stessa procedura con b DH al posto di b LH e invia 1 a b L b LH bHbH b LDH bLbL

11 Non-Deducibilità 12 Lucy può visualizzare solo i bit Low, cioè Questa funzione non è sicura rispetto alla non-interferenza; infatti eliminando i comandi di Holly, l output per Lucy dovrebbe essere In quest ultimo caso Lucy non può dedurre quali istruzioni sono state eseguite e poi cancellate, perché non hanno influenzato l output (ma solo la sua lunghezza) Considerazioni Non-Deducibilità H,xor1 L,xor1 L,xor0 H,xor1 H L (1,0)(1,1)(0,1) L,xor0 (1,0) (1,1) (0,0) IS Un sistema è non-deducibile se, analizzando gli output, un utente non può dedurre gli input di un altro utente Se un utente Low, che può inserire e ottenere solo dati di tipo Low, da questi riesce a dedurre i dati High, allora i dati sono trapelati da High a Low. Adesso consideriamo l automa a due bit visto in precedenza, però con alcune modifiche: -Due set di input: High e Low; -Due set di output: High e Low; Introduciamo un altra modifica: se Holly esegue un operazione, cambia solo il bit High, se invece è Lucy a farlo, varia solo il bit Low. Lo stato iniziale è (0,0), i comandi eseguiti sono: (Holly,xor1), (Lucy,xor0), (Lucy,xor1), (Lucy,xor0), (Holly,xor1), (Lucy,xor0). L output risultante è compreso lo stato iniziale. I bit dispari sono gli High, i pari sono i Low Premessa (0,1) (0)(1)(1)(1) (0)(0) (1)(1) (0)(0)(1)(1) Definizione

13 Conclusioni 14 Conclusioni Non-Interferenza Forte Premessa La Non-Interferenza è una formulazione alternativa di modelli di policy di sicurezza; una separazione stretta tra i soggetti può avvenire solo se tutti i canali sono chiusi. La composizione di sistemi che presi singolarmente sono sicuri non sempre ha come risultato un sistema sicuro, ma ha sempre bisogno di modifiche ed ottimizzazioni, anche per garantire l autonomia degli oggetti che lo compongono In generale (ma non lo dimostriamo), i sistemi non-deducibili non sono componibili. C è una modifica che permette la composizione - Studiare come approssiamare il minimo numero di operazioni negate che permettono il massimo livello di sicurezza ed autonomia - I sistemi non deducibili non incorporano la probabilità degli eventi Non-Interferenza Forte Nessun output di tipo High viene prodotto senza un input di tipo High Nell automa a due bit un operazione modifica solo il bit corrispondente, però invia all output sia il bit High che quello Low; se invece inviasse all output solo il bit del livello dell operazione, allora soddisferebbe la non-interferenza forte Esempio Conclusione Si può dimostrare (ma non in questa sede) che dei sistemi che soddisfano la non-interferenza forte sono componibili tra di loro mantenendo il requisito della non-interferenza [Weber] Campi di Studio

IIIIV Antonio Mattioli Non-Iterferenza e Composizione delle Policy Bibliografia -libro, di ---, capitolo 8 -Abstract Non-Interference, di Mastroeni - Varie, risorse in rete Grazie per l Attenzione. Domande?

3 NonInterferenza 4 Dog Composizione delle Policy Cat La Macchina ha due livelli di input ed output, High e Low, e può accettarli da sinistra e da destra. Accetta input di tipo High; gli input High sulla sinistra diventano output High sulla destra. Dopo un certo numero di input la macchina emette un output Low: -stop_count se si sono verificati un numero pari di input ed output High (1 se gli gli output sono dispari) -1 o 0 se si sono verificati un numero dispari di input ed output High (1 se gli output sono pari). Gli input non influenzano gli output, la macchina è sicura riguardo la noninterferenza cat HIGH LOW stop_count1 or 0 dog LOW HIGH stop_count 1 or 0 HIGH Simile a cat, ma con qualche variante: -gli output High sono sulla sinistra -gli output Low 1 o 0 sono sulla sinistra -stop_count è un input da sinistra, causa l emissione di 1 o 0 Gli input non influenzano gli output, la macchina è sicura riguardo la noninterferenza

3 NonInterferenza 4 Composizione delle Policy Si può dimostrare che gli output di entrambi i lati sono uguali, catdog non ha ricevuto input da sinistra. In realtà è possibile comporre due sistemi di questo tipo, grazie all assenza di feedback: CatDog cat HIGH LOW dog LOW stop_count 1 or 0 HIGH 1 or 0 Due sistemi A e B sono connessi se l output di A è l input di B; quando A è connesso a B, ma non viceversa, allora il sistema è privo di feedback. Le informazioni scorrono in una sola direzione Gli Input High influenzano gli output Low, quindi la macchina non è sicura dal punto di vista della noninterferenza Assenza di Feedback Un sistema privo di feedback e composto da NISS è a sua volta un NISS