Sicurezza Informatica Prof. Stefano Bistarelli bista@dipmat.unipg.it http://www.sci.unich.it/~bista/
Prof. Stefano Bistarelli - Sicurezza Informatica Clark wilson Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Clark wilson The model uses transactions as the basic operations Integrity before and after the operations Data in a consistent/inconsistent state Prof. Stefano Bistarelli - Sicurezza Informatica
Modello di Integrità di Clark-Wilson Adatto all’integrità dei database L’integrità definita mediante vincoli che i dati devono rispettare Esempio: in una banca D depositi odierni, W prelievi odierni, YB bilancio di ieri, TB bilancio di oggi Vincolo di integrità: D + YB –W=TB Le transazioni ben formate portano uno stato consistente ad uno stato consistente Chi certifica che i vincoli siano sempre rispettati ? Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Entità CDI: entità/dati soggetti a vincoli di integrità UDI: entità/dati non soggetti a vincoli di integrità IVP: procedure che controllano i vincoli di integrità TP: procedure di trasformazione, che portano il sistema da uno stato valido ad un altro stato valido Prof. Stefano Bistarelli - Sicurezza Informatica
Regole di certificazione CR1 Se un IVP è eseguito, deve assicurarsi che tutti i CDI siano in uno stato valido CR2 Una TP deve trasformare un insieme di CDI da uno stato valido ad uno stato valido CR2 definisce come certificata una relazione che associa un insieme di CDI ad una TP Prof. Stefano Bistarelli - Sicurezza Informatica
Regole di certificazione CR2 implica che una TP può corrompere un CDI se non è certificato a lavorarvi Esempio: La TP che investe denaro nel portafoglio azionario della banca corromperebbe i bilanci anche se la TP fosse certificata a lavorare sul portafoglio, perchè le azioni della TP potrebbero non avere senso sui conti bancari Da ciò nasce la prima regola di rinforzo Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Regole di rinforzo ER1 Il sistema deve garantire che solo le TP certificate ad operare su determinati CDI svolgano operazioni su di essi. ER2 Il sistema associare a ciascun TP e insieme di CDI un utente. Il TP può accedere a quei CDI per conto dell’utente, ma non può accedere per conto di utenti non autorizzati. System must restrict access based on user ID (allowed relation <user, TP, {CDI}>) Quale soggetto, puo’ eseguire quale azione su quale oggetto!! Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Utenti e regole CR3 Le relazioni di permesso devono essere basate sulla separation of duty. ER3 Il sistema deve autenticare ogni utente che vuole utilizzare una TP Type of authentication undefined, and depends on the instantiation Authentication not required before use of the system, but is required before manipulation of CDIs (requires using TPs) Prof. Stefano Bistarelli - Sicurezza Informatica
Separation of Duty In Model ER4 Only the certifier of a TP may change the list of entities associated with that TP. No certifier of a TP, or of an entity associated with that TP, may ever have execute permission with respect to that entity. Enforces separation of duty with respect to certified and allowed relations Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Uso dei Log CR4 Tutte le TP devono scrivere in CDI di solo accodamento (append) tutte le informazioni sufficienti a ricostruire le operazioni svolte. Questo CDI è il log Gli amministratori devono essere in grado di capire cosa ha fatto una determinata transazione Prof. Stefano Bistarelli - Sicurezza Informatica
Trattamento di Input non fidato CR5 Ogni TP che prende in input un UDI può eseguire solo transformazioni valide, oppure nessuna transformazione, per ogni possibile valore dell’UDI. La trasformazione può quindi rifiutare il UDI o trasformarlo in un CDI. In una banca, i numeri inseriti da tastiera sono UDI, che non possono essere dati in input ad una TP. Un’apposita TP deve validare tali numeri (rendendoli un CDI) prima di usarli; se la validazione fallisce, la TP rigetta il UDI Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Comparison to Biba Biba No notion of certification rules; trusted subjects ensure actions obey rules Untrusted data examined before being made trusted Clark-Wilson Explicit requirements that actions must meet Trusted entity must certify method to upgrade untrusted data (and not certify the data itself) Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Key Points Integrity policies deal with trust As trust is hard to quantify, these policies are hard to evaluate completely Look for assumptions and trusted users to find possible weak points in their implementation Biba based on multilevel integrity Clark-Wilson focuses on separation of duty and transactions Prof. Stefano Bistarelli - Sicurezza Informatica
Prof. Stefano Bistarelli - Sicurezza Informatica Discussion: Differenza tra Mandatory e Discretional Access control Bell-LaPAdula Biba Clark-Wilson Prof. Stefano Bistarelli - Sicurezza Informatica