+ All Categories
Home > Documents > Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza...

Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza...

Date post: 01-May-2015
Category:
Upload: sofia-bruno
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
105
Sicurezza dei Sicurezza dei sistemi sistemi informatici informatici Master di I° livello in Master di I° livello in Sistemi e Tecnologie per la sicurezza Sistemi e Tecnologie per la sicurezza dell'Informazione e della dell'Informazione e della Comunicazione Comunicazione Quarta lezione Quarta lezione 6/6/2007 6/6/2007
Transcript
Page 1: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Sicurezza dei sistemi Sicurezza dei sistemi informaticiinformatici

Master di I° livello inMaster di I° livello in

Sistemi e Tecnologie per la sicurezza Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazionedell'Informazione e della Comunicazione

Quarta lezioneQuarta lezione6/6/20076/6/2007

Page 2: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ContenutoContenuto

Classificazione dei livelli di sicurezza di un Classificazione dei livelli di sicurezza di un S.O.S.O.

Sicurezza su WindowsSicurezza su Windows Sicurezza su UnixSicurezza su Unix Sistemi per la Intrusion DetectionSistemi per la Intrusion Detection Sicurezza nei databaseSicurezza nei database

Page 3: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Classificazione della sicurezza dei sistemi di calcolo

Orange Book. Documento pubblicato dal Dipartimento della Difesa americano (D.O.D)

Sono specificate quattro categorie di sicurezza:A, B, C, D (in ordine decrescente).

Categoria D. Non ha livelli di sicurezza. Esempi MS-DOS, Windows 3.1.

Page 4: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ClassificazioneClassificazione Categoria C. Suddivisa in C1 e C2: C1. La Trusted Computing Base consente:

Autenticazione degli utenti (password). I dati di autenticazione sono protetti rendendoli inaccessibili agli utenti non autorizzati.

Protezione dei dati e programmi propri di ogni utente. Controllo degli accessi a oggetti comuni per gruppi di

utenti definiti Esempio: Unix C2. La TCB consente

oltre a quanto definito per la C1, il controllo degli accessi su una base individuale.

Esempio UNIX, Windows NT e 2000.

Page 5: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ClassificazioneClassificazione

Categoria B. Suddivisa in B1, B2 e B3 B1. La TCB consente, oltre a quanto definito in C2,

l’introduzione dei livelli di sicurezza (modello Bell-La Padula). Almeno due livelli.

B2. La TCB estende l’uso di etichette di riservatezza ad ogni risorsa del sistema, compresi i canali di comunicazione.

B3. La TCB consente la creazione di liste di controllo degli accessi in cui sono identificati utenti o gruppi cui non è consentito l’accesso ad un oggetto specificato.

Page 6: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ClassificazioneClassificazione

Categoria A. Suddivisa in A1 e classi superiori A1. E’ equivalente a B3, ma con il vincolo di

essere progettato e realizzato utilizzando metodi formali di definizione e verifica.

Un sistema appartiene ad una classe superiore ad A1 se è stato progettato e realizzato in un impianto di produzione affidabile da persona affidabile

Page 7: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Cronologia di Windows: MS DOSCronologia di Windows: MS DOS

1981 MS-DOS 1.0 per IBM PC 1983 versione 2.0 1986 versione 3.0 sempre per 16 bits, line-oriented e single-user Windows 2.x/3.x è semplicemente una GUI

per MS-DOS

Page 8: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Cronologia di Windows: Cronologia di Windows: Windows 9xWindows 9x

Windows 95 e 98 continuano ad avere molto in comune con MS-DOS molte parti sono a 16 bit hanno lo stesso file system

diversità: integrazione del networking nel SO (problemi legali)

nessuna sicurezza: condivisione degli spazi di memoria di tutti gli

utenti

Page 9: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Cronologia di Windows: Cronologia di Windows: Windows NTWindows NT

Negli ultimi anni 80 parte windows NT Indipendente da MS-DOS, nasce nel ‘93

fiasco sul mercato, piccolo successo come server NT 4.0 (1996) --> 16 M di codice C e C++ NT 5.0 (Windows 2000) --> 29 M di codice Possiede molte più features di Unix (window

e GUI sono nel SO, ha codice per architetture diverse e per versioni diverse....)

Page 10: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Libreria Win32 APILibreria Win32 API è una libreria molto vasta di procedure che

possono effettuare chiamate di sistema o anche possono operare semplicemente in user mode

moltissime API grafiche garantisce la compatibilità con i SO

precedenti Per contrasto, Unix definisce un numero

esiguo di chiamate che restano fisse nelle diverse versioni

Page 11: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Come funzionano le API di Win32Come funzionano le API di Win32

Le invocazioni di procedure Win32 creano oggetti (file, processi, thread ecc)

La chiamata restituisce un handle all’oggetto che può essere utilizzato in altre chiamate

E’ un po’ object-oriented: c’è l’incapsulamento, l’oggetto è manipolato (solo) con le funzioni previste

Page 12: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Il registryIl registry E’ un database che contiene tutte le informazioni di

configurazione hardware/software/sicurezza che sono necessarie al boot

è una specie di file system con directory e file generalmente molto piccoli

il registry è diviso in sezioni (ROOT KEYS), che contengono directories (keys) che a loro volta possono contenere subkeys o valori (file di testo)

Page 13: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Root keysRoot keys

HKEY_LOCAL_MACHINE HKEY_USERS HKEY_PERFORMANCE DATA HKEY_CLASSES_ROOT HKEY_CURRENT_USER HKEY_CURRENT_CONFIG

Page 14: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Manipolare il registryManipolare il registry

il registry è in formato proprietario, si manipola quindi (solo) con un registry editor, cioè regedit.exe

L’integrità del registry è importante hives e keys hanno liste di permessi per i

gruppi predefiniti Per default non l’audit non si fa, ma è previsto

Page 15: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Procedure per manipolare il registryProcedure per manipolare il registry

Esistono procedure win32 API per manipolare il registry: RegCreateKeyEx (crea un nuovo key) RegOpenKeyEx (ottiene un handle) RegEnumKeyEx (enumera le key) RegQueryValueEx (ricerca)

Il registry è protetto accuratamente, la sua corruzione implica il reinstallo dell’intero sistema

Page 16: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Caratteristiche di sicurezza in NTCaratteristiche di sicurezza in NT login sicuro con misure anti-spoofing (al CTRL-

ALT-DEL è chiamato il driver della tastiera che a sua volta chiama un programma di sistema “genuino”)

controllo degli accessi discrezionale accesso privilegiato protezione dello spazio degli indirizzi di ciascun

processo prima dell’uso le pagine di memoria vengono

azzerate audit

Page 17: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Gruppi e permessiGruppi e permessi

Windows NT Windows NT prevede molti utenti e gruppi predefiniti (i loro permessi di default sono nel Registry)

Cio è molto utile per distribuire le responsabilità della gestione del sistema su vari utenti

Anche l’insieme dei permessi è più ampio: oltre a read write ed execute, si può concedere take

ownership, change permissions, delete,….

Page 18: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Permessi in WindowsPermessi in Windows DELETE The right to delete the object. READ_CONTROL The right to read the information in the object's security

descriptor, not including the information in the SACL. SYNCHRONIZE The right to use the object for synchronization. This

enables a thread to wait until the object is in the signaled state. Some object types do not support this access right.

WRITE_DAC The right to modify the DACL in the object's security descriptor.

WRITE_OWNER The right to change the owner in the object's security descriptor.

FILE_ADD_FILE For a directory, the right to create a file in the directory. FILE_ADD_SUBDIRECTORY For a directory, the right to create a

subdirectory. FILE_ALL_ACCESS All possible access rights for a file. FILE_APPEND_DATA For a file object, the right to append data to the file.

For a directory object, the right to create a subdirectory. FILE_CREATE_PIPE_INSTANCE For a named pipe, the right to create a

pipe.

Page 19: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Permessi in WindowsPermessi in Windows FILE_DELETE_CHILD For a directory, the right to delete a directory and all the files

it contains. FILE_EXECUTE For a native code file, the right to execute the file. This access right

given to scripts may cause the script to be executable, depending on the script interpreter.

FILE_LIST_DIRECTORY For a directory, the right to list the contents of the directory.

FILE_READ_ATTRIBUTES The right to read file attributes. FILE_READ_DATA For a file object, the right to read the corresponding file data. For

a directory object, the right to read the corresponding directory data. FILE_READ_EA The right to read extended file attributes. FILE_TRAVERSE For a directory, the right to traverse the directory. By default, users

are assigned the BYPASS_TRAVERSE_CHECKING privilege, which ignores the FILE_TRAVERSE access right. FILE_WRITE_ATTRIBUTES The right to write file attributes. FILE_WRITE_DATA For a file object, the right to write data to the file. For a

directory object, the right to create a file in the directory. FILE_WRITE_EA The right to write extended file attributes. [...]

Page 20: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

VantaggiVantaggi

Questa maggiore ricchezza di permessi di utenti e di gruppi, assieme al meccanismo di incapsulamento delle funzioni di sistema di Win32, rende possibile eseguire molti dei compiti usuali di amministrazione con permessi non di root

Page 21: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ArchitetturaArchitettura

Ogni utente (gruppo, host e server) ha un SID : è un numero che consiste di una breve intestazione e di un intero lungo (univoco)

quando un utente inizia un processo, riceve un SAT (Security Access Token))

Page 22: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

SATSAT Security ID: identifica un utente in maniera univoca. Group SID: Una lista dei gruppi ai quali l’utente appartiene

ai fini del controllo degli accessi. Un gruppo è un insieme di ID di utente. Ogni gruppo ha un unico SID.

Privilegi: Una lista di servizi di sistema “security sensitive” che l’utente può chiamare. Esempio creare token.

Default owner: se l’utente genera un nuovo oggetto può specificare se il proprietario dell’oggetto è l’utente stesso o un gruppo cui l’utente appartiene.

Default ACL: lista iniziale di protezione associata agli oggetti che l’utente crea. La lista può essere successivamente modificata

Page 23: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ControlloControllo

ogni volta che il processo chiede di usare una risorsa, il S.O. usa Il SAT del processo e Il Security Descriptor della risorsa stessa

Page 24: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Security DescriptorSecurity Descriptor Flags: definiscono il tipo ed i contenuti di un descrittore.

Esempio: se sono contenute o no SACL e DACL. Owner:il proprietario dell’oggetto può essere un individuo

o un gruppo. Il proprietario può cambiare i contenuti della DACL.

Discretionary Access Control List (DACL): determina quali utenti e con quali operazioni possono accedere all’oggetto. E’ costituita da una lista di access control entries

(ACEs). System Access Control List(SACL):specifica quali tipi di

operazioni sull’oggetto generano audit messages.

Page 25: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ACEACE

Access Control Entry: contiene un SID individuale o di gruppo e una maschera di accesso che definisce i diritti che sono garantiti al SID.

La maschera contiene quattro bit per indicare i diritti di accesso di lettura, scrittura, esecuzione e tutti i diritti.

Altri bit indicano ulteriori diritti

Page 26: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

file SID GSID ACL SACL

deny pippo 111111 allow franz 11000 allow everyone 10000

audit franz

111111

Page 27: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Scansione delle ACLScansione delle ACL La scansione si ferma alla prima ACE in cui

corrisponde l’user o il group SID del processo che chiede di usare la risorsa se è DENY allora NO altrimenti ci deve essere ALLOW dell’operazione richiesta

I DENY sono sempre all’inizio per successive operazioni rivolte alla stessa risorsa si

usa la stessa ACE Per default

ACL assente => accesso sempre permesso ACL vuota => accesso sempre negato

Page 28: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

File cifratiFile cifrati in Windows NT il file system permette di crittare i

file mediante una chiave di 128 bit (diversa per ogni file)

la chiave è usata per crittare il file (blocco a blocco) la chiave cifrata con la chiave pubblica dell’utente è

inserita nel Registry per decrifare il file c’è bisogno della chiave segreta

dell’utente Se il file deve essere condiviso, la chiave di cifratura

è cifrata con le chiavi pubbliche di tutti gli utenti che vi possono accedere

Page 29: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Cronologia di UnixCronologia di Unix

1960-70 MIT, Bell Labs e GE lavorano al S.O. MULTICS

Bell lascia il progetto e Ken Thompson inizia lo sviluppo di Unix

Sviluppato in C su PDP-11 ‘74 Portabilità attraverso quella del compilatore C Networking con TCP/IP

Page 30: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Cronologia di UnixCronologia di Unix

release 2.0 di Linux in ‘96 0.5M molto software viene portato su Linux esiste una GUI (KDE) Linux simile a Unix, condivide con

quest’ultimo circa l’80% delle chiamate di sistema

Page 31: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Login e passwordLogin e password

ogni utente autorizzato ha login e password ed identificato con userID e groupID

le password sono criptate con una funzione one-way sono contenute in un file (spesso /etc/passwd)

accessibile (rw) solo da root questo file è separato da quello di profilo (spesso

/etc/profile) che contiene le azioni specifiche da eseguire al login che è accessibile dall’utente

Page 32: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

UID e GIDUID e GID

UID sono interi a 16 bit (0-65535) UID speciali

0 = root, 1 = daemon (lp) 9 = audit

i GID sono simili: 0 = system 1 = daemon per device...

Page 33: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Utente RootUtente Root

root può fare quasi tutto, tranne recuperare le password (nessuno lo può fare) può essere qualsiasi utente può montare e smontare file systems decidendo gli

accessi consentiti quindi root è anche un punto debole: conviene separare i diversi compiti del system

manager usando altri utenti come daemon per il networking

Page 34: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Punti importanti sulla sicurezza Punti importanti sulla sicurezza in Unixin Unix

la politica degli accessi è espressa tramite ACL semplificate

Il metodo per consentire ad un processo di accedere a risorse per cui non avrebbe i permessi è l’invocazione controllata

Page 35: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

File system in UnixFile system in Unix

Unix organizza i file in una struttura ad albero, i nodi interni sono folder (comunque file) e le foglie sono i file semplici

ogni file nella directory è un puntatore ad un i-node che contiene varie informazioni mode, link counter,uid, gid dell’owner,

time, block count, posizione fisica

Page 36: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ACL in UnixACL in Unix

12 bit ℓ

link counter

rwx r-- r--

permessi del gruppo dell’owner

permessi di tutti gli altri

permessi dell’owner

Page 37: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Controllo delle ACLControllo delle ACL

quando un processo (UID e GID) chiede di accedere un file: i permessi vengono esaminati da sinistra a destra,

se UID è l’owner del file allora valgono i primi 3 bit

se il GID è quello dell’owner del file allora vale la seconda terna

altrimenti vale la terza terna

Page 38: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

DirectoryDirectory

ogni utente ha una home ed altre directory si creano con mkdir

Le directory hanno permessi come i file ma con i seguenti significati: x= è richiesto per entrare (cd) nella directory e per

aprire file in essa (non si può fare ls) w= creare e distruggere file r= si può fare ls

Page 39: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Invocazione controllataInvocazione controllata

in Unix è possibile specificare che un eseguibile E quando viene invocato da un processo P non prende lo UID e GID di P bensì quelli del creatore di E

se questo è root o un utente con privilegi particolari allora questi vengono “prestati” all’utente di P

un tale programma si chiama SETUID o SETGID

Page 40: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Invocazione controllataInvocazione controllata

l’invocazione controllata è il modo in cui UNIX media TUTTE le richieste di accesso alle risorse

Per ogni richiesta avviene l’invocazione di un processo di sistema eseguito come root (o utente speciale) che controlla che la richiesta sia autorizzata e, se lo è, esegue l’azione richiesta e poi ritorna all’utente

Page 41: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

gestione di una stampante lp /dev/lp

owner un daemon (lp) ACL rw- --- --- nessuno a parte lp può usare la stampante

ma se definiamo un programma stampa(lp) che accede alla stampante e tale che: il suo owner sia il daemon lp e sia SETUID,

allora ogni utente può usare la stampante e SOLO con stampa(lp)

Page 42: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Invocazione ed incapsulamentoInvocazione ed incapsulamento

ogni utente può usare l’invocazione controllata per ottenere incapsulamento

se l’utente U ha un file X che vuole proteggere, cioè vuole che venga consultato solo con un dato programma PX, allora può fare così: crea utente UX owner di PX e di X (con permessi rw) e

rende PX SETUID poi rende PX eseguibile da Y

Y eseguendo PX diventa UX e quindi può accedere a X

Page 43: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

SETUIDSETUID

Un comando con SETUID root è passwd cambia la password deve accedere al file delle password crittate

Un altro è login chmod 4/// nome --> SUID all’esecuzione chmod 2/// nome --> SGID all’esecuzione

Page 44: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Processo di loginProcesso di login

riceve login e passwd codifica la passwd e controlla che sia corretta nel profile trova l’ambiente (sh, csh, ksh…) apre input e output standard esegue setuid e setgid dell’utente esegue la shell e termina la shell continua con UID e GID giuste

Page 45: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

1. ogni comando nella shell inizia un processo che eredita la UID e GID della shell

2. ogni file che viene creato riceve quella UID e GID

3. quando un processo tenta di accedere per la prima volta ad un file la UID e GID sono usate per controllare se l’accesso è consentito

4. il processo riceve un file descriptor e nelle successive operazioni, non ci sono più controlli

5. se il modo di un file cambia, il cambiamento entra in effetto dopo la chiusura

Page 46: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Protezione delle deviceProtezione delle device

sono come files e quindi hanno i loro permessi:

/dev/mem mappa della memoria fisica /dev/kmem mappa della memoria virtuale

il system manager non deve lasciare permessi pericolosi

Possono condurre ad attacchi al livello sottostante

Page 47: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

mountmount

mount serve per montare file systems: offre opzioni di sicurezza

-r = read only nosuid = mettere a 0 tutti i SUID e SGID bit noexec = nessun binario può essere eseguito

Page 48: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

AuditingAuditing

ricorda i fatti rilevanti per la sicurezza in un file protetto: per scoprire l’intrusione per rispondere all’intrusione (pericoloso)

oltre a restringere l’accesso al file di log, conviene mandarlo su altre macchine o stamparlo

Page 49: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Auditing e SETUIDAuditing e SETUID

i programmi SETUID mettono in crisi l’auditing perchè viene ricordato l’UID del processo che è diverso da quello dell’utente che richiede l’operazione

abbiamo visto che ci sono comandi del sistema per risalire alla UID e GID reale uid=getuid(), gid=getgid() // reale uid=geteuid(), gid=getegid() // effettivo

Page 50: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Problemi con l’invocazione Problemi con l’invocazione controllatacontrollata

Il meccanismo dell’invocazione controllata si presta ad un attacco molto pericoloso ed usato di frequente: Stack overflow

L’intruder acquisisce i diritti di root e può causare molti danni...

Page 51: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Access Control List in UnixAccess Control List in Unix

Al pari delle ultime versioni di Windows, Al pari delle ultime versioni di Windows, anche in Unix è possibile usare le ACL, anche in Unix è possibile usare le ACL, descritte secondo lo standard POSIXdescritte secondo lo standard POSIX

Non tutte le versioni di Unix e di Linux Non tutte le versioni di Unix e di Linux supportano tale standardsupportano tale standard

Comunque non tutte le applicazioni Comunque non tutte le applicazioni controllano le ACLcontrollano le ACL

Page 52: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Posix ACLPosix ACL

Tipi di ACL entry Owner user::rwx Named user user:name:rwx Owning group group::rwx Named group group:name:rwx Mask mask::rwx Others other::rwx

Page 53: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Posix ACLPosix ACL

ACL minime Contengono solo tre entry Sono equivalenti ai bit di permesso di UNIX

tradizionale ACL estese

Hanno più di tre ACL entry Contengono una mask entry Possono contenere qualunque numero di named

user e di named group entries

Page 54: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Funzionamento delle ACLFunzionamento delle ACL

Le ACL minime funzionano come al solito Le ACL estese hanno il seguente funzionamento

Tutti i named user e i named group entrano a far parte della classe group

Bisogna distinguire fra: permessi della classe group ACL entry della classe group

I permessi della classe group sono contenuti nella maschera e rappresentano un "upper bound" ai permessi che possono essere ottenuti dalle entry della classe gruppo

Page 55: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

Con i seguenti permessi user::rw group::r others::r user:jane:rwx mask:rw

l’utente jane ha diritti rw

Page 56: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ACL di defaultACL di default

Come vengono ereditate le default ACL? la default ACL viene copiata nella access ACL dei nuovi

file la default ACL viene copiata nella default ACL delle nuove

directory Ulteriori dettagli

quando un file viene creato possono essere specificati dei diritti di accesso viene effettuata l'intersezione tra questi e la default ACL

se una directory non ha default ACL, si utilizza il meccanismo tradizionale UNIX (umask, etc.)

Page 57: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Intrusion detectionIntrusion detection

Un meccanismo estremamente importante da Un meccanismo estremamente importante da utilizzare per controllare la sicurezza di un utilizzare per controllare la sicurezza di un sistema è quello degli IDS (Intrusion Detection sistema è quello degli IDS (Intrusion Detection System)System)

Si può fare a livello di host (HIDS) e a livello Si può fare a livello di host (HIDS) e a livello di network (NIDS)di network (NIDS)

Page 58: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Principi di basePrincipi di base

Distinguere situazioni normali da quelle Distinguere situazioni normali da quelle anomaleanomale

L’utente in condizioni normaliL’utente in condizioni normali si comporta in modo più o meno prevedibilesi comporta in modo più o meno prevedibile non compie azioni atte a violare la sicurezzanon compie azioni atte a violare la sicurezza i propri processi compiono solo azioni permessei propri processi compiono solo azioni permesse

Page 59: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Scopi di un IDSScopi di un IDS

Scoprire un ampia gamma di intrusioni, sia già Scoprire un ampia gamma di intrusioni, sia già note che non notenote che non note

Scoprirle velocemente, non necessariamente in Scoprirle velocemente, non necessariamente in tempo realetempo reale

Presentare i report delle analisi in formato Presentare i report delle analisi in formato semplice e facilmente comprensibilesemplice e facilmente comprensibile

Essere accurato, evitando possibilmente falsi Essere accurato, evitando possibilmente falsi positivi e falsi negativipositivi e falsi negativi

Page 60: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Modelli per l’IDSModelli per l’IDS Detection di anomalieDetection di anomalie

Sequenze di azioni non usuali possono essere Sequenze di azioni non usuali possono essere intrusioniintrusioni

Detection di uso malevoloDetection di uso malevolo Si conosce cosa quali sequenze di azioni possono Si conosce cosa quali sequenze di azioni possono

essere intrusioniessere intrusioni Detection in base a specificheDetection in base a specifiche

Si conoscono le situazioni derivanti da intrusioniSi conoscono le situazioni derivanti da intrusioni I modelli possono essere statici o adattiviI modelli possono essere statici o adattivi

Page 61: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Modelli per la scoperta di anomalieModelli per la scoperta di anomalie

Si analizzano insiemi di caratteristiche del Si analizzano insiemi di caratteristiche del sistema confrontando i valori con quelli attesi sistema confrontando i valori con quelli attesi e segnalando quando le statistiche non sono e segnalando quando le statistiche non sono paragonabili a quelle atteseparagonabili a quelle attese Metriche a sogliaMetriche a soglia Momenti statisticiMomenti statistici Modelli di MarkovModelli di Markov

Page 62: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Metriche a soglieMetriche a soglie

Contare il numero di volte che un evento si Contare il numero di volte che un evento si presentapresenta Ci si aspetta tra Ci si aspetta tra mm e e nn occorrenze occorrenze Se il numero cade al di fuori, c’è un’anomaliaSe il numero cade al di fuori, c’è un’anomalia

EsempioEsempio Windows: blocco dopo k tentativi di login falliti. Il Windows: blocco dopo k tentativi di login falliti. Il

range è (0, range è (0, kk–1).–1). k k o più tentativi destano sospettoo più tentativi destano sospetto

Page 63: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

ProblematicheProblematiche

E’ difficile trovare l’intervallo correttoE’ difficile trovare l’intervallo corretto Talvolta si possono creare situazioni in cui Talvolta si possono creare situazioni in cui

l’intervallo diventa molto più grandel’intervallo diventa molto più grande Esempio utenti francesi che usano una tastiera Esempio utenti francesi che usano una tastiera

americanaamericana

Page 64: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Momenti statisticiMomenti statistici

L’analizzatore calcola la deviazione standard L’analizzatore calcola la deviazione standard (i primi due momenti) o altre misure di (i primi due momenti) o altre misure di correlazione (momenti di ordine superiore)correlazione (momenti di ordine superiore) Se i valori misurati di un certo momento cadono al Se i valori misurati di un certo momento cadono al

di fuori di un certo intervallo vi è un’anomaliadi fuori di un certo intervallo vi è un’anomalia ProblematicheProblematiche

I profili possono evolvere nel tempo, si possono I profili possono evolvere nel tempo, si possono “pesare” opportunamente i dati o alterare le regole “pesare” opportunamente i dati o alterare le regole di detectiondi detection

Page 65: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Esempio: IDESEsempio: IDES

Developed at SRI International to test Denning’s Developed at SRI International to test Denning’s modelmodel Represent users, login session, other entities as ordered Represent users, login session, other entities as ordered

sequence of statistics <sequence of statistics <qq0,0,jj, …, , …, qqnn,,jj> >

qqii,,jj (statistic (statistic ii for day for day jj) is count or time interval) is count or time interval Weighting favors recent behavior over past behaviorWeighting favors recent behavior over past behavior

AAkk,,jj sum of counts making up metric of sum of counts making up metric of kkth statistic on th statistic on jjth dayth day

qqkk,,ll+1+1 = = AAkk,,ll+1 +1 – – AAkk,,ll + 2+ 2––rtrtqqkk,,ll where where tt is number of log entries/total time is number of log entries/total time

since start, since start, rr factor determined through experience factor determined through experience

Page 66: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Example: HaystackExample: Haystack

Let Let AAnn be be nnth count or time interval statisticth count or time interval statistic

Defines bounds Defines bounds TTLL and and TTUU such that 90% of values for such that 90% of values for

AAiis lie between s lie between TTLL and and TTUU

Haystack computes Haystack computes AAnn+1+1

Then checks that Then checks that TTL L ≤ ≤ AAnn+1+1 ≤ ≤ TTUU

If false, anomalousIf false, anomalous Thresholds updatedThresholds updated

AAii can change rapidly; as long as thresholds met, all is well can change rapidly; as long as thresholds met, all is well

Page 67: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Modelli di MarkovModelli di Markov

L’ipotesi è che la storia passata influenzi la prossima L’ipotesi è che la storia passata influenzi la prossima transizione di statotransizione di stato

Le anomalie sono riconosciute da Le anomalie sono riconosciute da sequenzesequenze di eventi, di eventi, e non sulle occorrenze di singoli eventie non sulle occorrenze di singoli eventi

Il sistema deve essere addestrato per riconoscere Il sistema deve essere addestrato per riconoscere sequenze validesequenze valide l’addestramento è svolto con utenti non anomalil’addestramento è svolto con utenti non anomali l’addestramento produce migliori risultati con una quantità l’addestramento produce migliori risultati con una quantità

maggiore di datimaggiore di dati i dati dovrebbero coprire tutti le sequenze normali del i dati dovrebbero coprire tutti le sequenze normali del

sistemasistema

Page 68: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Esempio: TIMEsempio: TIM

Time-based Inductive LearningTime-based Inductive Learning Sequence of events is Sequence of events is abcdedeabcabcabcdedeabcabc TIM derives the following rules:TIM derives the following rules:

RR11: : ababcc (1.0) (1.0) RR22: : ccdd (0.5) (0.5) RR33: : ccee (0.5) (0.5)

RR44: : ddee (1.0) (1.0) RR55: : eeaa (0.5) (0.5) RR66: : eedd (0.5) (0.5) Seen: Seen: abdabd; triggers alert; triggers alert

cc always follows always follows abab in rule set in rule set Seen: Seen: acfacf; no alert as multiple events can follow ; no alert as multiple events can follow cc

May add rule May add rule RR77: : ccff (0.33); adjust (0.33); adjust RR22, , RR33

Page 69: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Sequenze di chiamate di sistemaSequenze di chiamate di sistema

Forrest: definisce il normale andamento in Forrest: definisce il normale andamento in termini di sequenze di chiamate di sistema termini di sequenze di chiamate di sistema ((traccetracce))

Negli esperimenti è in grado di distinguere Negli esperimenti è in grado di distinguere sendmailsendmail e e lpdlpd da altri programmi da altri programmi

Si addestra il sistema con un insieme di tracce Si addestra il sistema con un insieme di tracce e si cerca se la traccia corrente è anomalae si cerca se la traccia corrente è anomala

Page 70: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Problematiche ulterioriProblematiche ulteriori

Modelli statisticiModelli statistici spesso si usa la distribuzione gaussianaspesso si usa la distribuzione gaussiana alternative sono clusterizzazione e tecniche non alternative sono clusterizzazione e tecniche non

parametricheparametriche Selezione di featureSelezione di feature

CPU versus I/OCPU versus I/O selezione automaticaselezione automatica

Page 71: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Modelli per il misusoModelli per il misuso

Si controlla se una sequenza di istruzioni da Si controlla se una sequenza di istruzioni da eseguire è già nota essere potenzialmente eseguire è già nota essere potenzialmente dannosa per la sicurezza del sistemadannosa per la sicurezza del sistema

La conoscenza è rappresentata mediante regole La conoscenza è rappresentata mediante regole e il sistema controlla se la sequenza soddisfa e il sistema controlla se la sequenza soddisfa una di queste regoleuna di queste regole

Non si possono scoprire intrusioni non note Non si possono scoprire intrusioni non note precedentementeprecedentemente

Page 72: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Esempi di IDS a regoleEsempi di IDS a regole

IDIOT monitorizza i log cercando sequenze di IDIOT monitorizza i log cercando sequenze di eventi che corrispondono ad attacchieventi che corrispondono ad attacchi

STAT analizza le transizioni di stato, STAT analizza le transizioni di stato, concentrandosi sul modo come alcuni privilegi concentrandosi sul modo come alcuni privilegi sono ottenutisono ottenuti

NFR controlla il traffico di rete, analizzando e NFR controlla il traffico di rete, analizzando e filtrando i pacchettifiltrando i pacchetti

Page 73: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Modelli mediante specificheModelli mediante specifiche

Si determina se una sequenza di azioni viola Si determina se una sequenza di azioni viola una specifica di come un programma o un una specifica di come un programma o un sistema dovrebbe funzionaresistema dovrebbe funzionare

Page 74: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Architettura di un IDSArchitettura di un IDS

E’ essenzialmente un sistema di auditing sofisticatoE’ essenzialmente un sistema di auditing sofisticato AgenteAgente è una sorta di logger; it gathers data for analysis è una sorta di logger; it gathers data for analysis DirettoreDirettore è un analizzatore; analizza i dati ottenuti dagli è un analizzatore; analizza i dati ottenuti dagli

agenti secondo regole interneagenti secondo regole interne NotificatoreNotificatore ottiene i risultati dal direttore e compie alcune ottiene i risultati dal direttore e compie alcune

azioniazioni Può semplicemente notificare messaggi agli amministratoriPuò semplicemente notificare messaggi agli amministratori Può riconfigurare gli agentiPuò riconfigurare gli agenti Può attivare meccanismi di rispostaPuò attivare meccanismi di risposta

Page 75: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

AgenteAgente

Ottiene le informazioni e le invia al direttoreOttiene le informazioni e le invia al direttore Può mettere le informazioni in altre formePuò mettere le informazioni in altre forme

Preprocessing dei record per estrarre parti rilevantiPreprocessing dei record per estrarre parti rilevanti Può cancellare informazioni non necessariePuò cancellare informazioni non necessarie Il direttore può richiedere all’agente ulteriori Il direttore può richiedere all’agente ulteriori

informazioniinformazioni Si distinguono in agenti host e agenti networkSi distinguono in agenti host e agenti network

Page 76: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

DirettoreDirettore

Colleziona le informazioni inviate dagli agentiColleziona le informazioni inviate dagli agenti Elimina i record ridondanti o non necessariElimina i record ridondanti o non necessari

Analizza le informazioni rimanenti per Analizza le informazioni rimanenti per determinare se si è sotto attaccodeterminare se si è sotto attacco Usa le tecniche viste primaUsa le tecniche viste prima

Gira su un sistema separatoGira su un sistema separato Non influenza le performance dei sistemi Non influenza le performance dei sistemi

monitoratimonitorati

Page 77: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

NotificatoreNotificatore

Accetta le informazioni dal direttoreAccetta le informazioni dal direttore Prende le decisioni appropriatePrende le decisioni appropriate

Notificare messaggi agli amministratoriNotificare messaggi agli amministratori Rispondere all’attaccoRispondere all’attacco

Spesso usano delle GUISpesso usano delle GUI

Page 78: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Combining Sources: DIDSCombining Sources: DIDS

I monitoraggi di host e di network non sono I monitoraggi di host e di network non sono generalmente sufficienti da soli a scoprire generalmente sufficienti da soli a scoprire alcuni tipi di attacchialcuni tipi di attacchi Un’attaccante prova a fare telnet con vari login: i Un’attaccante prova a fare telnet con vari login: i

IDS network lo scoprono, ma non gli IDS hostIDS network lo scoprono, ma non gli IDS host L’attaccante prova entrare senza la password: gli L’attaccante prova entrare senza la password: gli

IDS host lo rilevano, ma non quelli di reteIDS host lo rilevano, ma non quelli di rete DIDS usa gli agenti sugli host da monitorare DIDS usa gli agenti sugli host da monitorare

ed un monitor di reteed un monitor di rete

Page 79: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Risposte alle intrusioniRisposte alle intrusioni

Prevenzione: l’attacco deve essere scoperto Prevenzione: l’attacco deve essere scoperto prima del completamentoprima del completamento

Una tecnica è il Jailing: far credere Una tecnica è il Jailing: far credere all’attaccante che l’intrusione è andata a buon all’attaccante che l’intrusione è andata a buon fine ma confinare le sue azioni in un dominio fine ma confinare le sue azioni in un dominio in cui non può fare danni (o causarne pochi)in cui non può fare danni (o causarne pochi) far scaricare file corrotti o falsifar scaricare file corrotti o falsi imitare il sistema veroimitare il sistema vero

Page 80: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Risposta alle intrusioniRisposta alle intrusioni

Trattamento delle intrusioniTrattamento delle intrusioni preparazionepreparazione identificazioneidentificazione contenimento (passivo/attivo)contenimento (passivo/attivo) eradicazioneeradicazione recuperorecupero seguito (apprendimento) seguito (apprendimento)

Page 81: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Sicurezza nei databaseSicurezza nei database

La protezione dei dati di un database necessita La protezione dei dati di un database necessita di strumenti particolari, alcuni dei quali di strumenti particolari, alcuni dei quali mutuati da quelli usati in altri settorimutuati da quelli usati in altri settori

Gli obiettivi sono comunque gli stessiGli obiettivi sono comunque gli stessi IntegritàIntegrità ConfidenzialitàConfidenzialità DisponibilitàDisponibilità

Page 82: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Requisiti di sicurezzaRequisiti di sicurezza Integrità fisica del DB: immunità ai guasti di Integrità fisica del DB: immunità ai guasti di

sistema e di dispositivosistema e di dispositivo Integrità logica del DB: preservazione della Integrità logica del DB: preservazione della

struttura del databasestruttura del database Integrità degli elementi: accuratezza dei datiIntegrità degli elementi: accuratezza dei dati AuditabilityAuditability: tenere traccia delle operazioni: tenere traccia delle operazioni Controllo degli accessiControllo degli accessi Autenticazione degli utentiAutenticazione degli utenti DisponibilitàDisponibilità

Page 83: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Integrità del databaseIntegrità del database

E’ garantita in gran parte dal DBMS, oltre che E’ garantita in gran parte dal DBMS, oltre che dal S.O.dal S.O.

Strumenti fondamentali sonoStrumenti fondamentali sono log delle transazioni su memoria stabilelog delle transazioni su memoria stabile copie di backup effettuate regolarmentecopie di backup effettuate regolarmente Update a due fasiUpdate a due fasi

Meccanismi standardMeccanismi standard ripresa a caldoripresa a caldo ripresa a freddoripresa a freddo

Page 84: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Integrità degli elementiIntegrità degli elementi

Controllo della corrispondenza tra i tipi dei Controllo della corrispondenza tra i tipi dei campi e i valoricampi e i valori

Controllo degli accessiControllo degli accessi Log dei cambiamentiLog dei cambiamenti

Page 85: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

AuditabilityAuditability

Tenere traccia delle operazioni svolte sul DB Tenere traccia delle operazioni svolte sul DB ha un duplice scopoha un duplice scopo garantire l’integrità fisica del DBgarantire l’integrità fisica del DB accesso incrementale ai datiaccesso incrementale ai dati

Problemi nella granularità delle operazioni da Problemi nella granularità delle operazioni da tracciaretracciare

Page 86: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Controllo degli accessiControllo degli accessi Normalmente i database relazionali usano Normalmente i database relazionali usano

sistemi DAC per il controllo degli accessisistemi DAC per il controllo degli accessi La primitiva GRANT permette di concedere La primitiva GRANT permette di concedere

diritti su tabelle agli utentidiritti su tabelle agli utenti I diritti standard sonoI diritti standard sono

SELECTSELECT INSERTINSERT UPDATEUPDATE DELETEDELETE REFERENCESREFERENCES

Page 87: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Controllo degli accessiControllo degli accessi

E’ possibile specificare la clausola WITH E’ possibile specificare la clausola WITH GRANT OPTIONGRANT OPTION il diritto può essere propagatoil diritto può essere propagato

Il diritto può essere revocato con la primitiva Il diritto può essere revocato con la primitiva REVOKEREVOKE

I diritti solitamente sono memorizzati (insieme I diritti solitamente sono memorizzati (insieme agli altri metadati) nelle tabelle di sistemaagli altri metadati) nelle tabelle di sistema

Page 88: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Controllo degli accessiControllo degli accessi

Come nei SO, anche nei DB esiste il concetto Come nei SO, anche nei DB esiste il concetto di amministratore: l’utente DBAdi amministratore: l’utente DBA

Ha il diritto di creare e cancellare utenti Ha il diritto di creare e cancellare utenti Ha il diritto di accesso a tutto il databaseHa il diritto di accesso a tutto il database Può concedere e revocare diritti al pari del Può concedere e revocare diritti al pari del

possessorepossessore

Page 89: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Controllo degli accessiControllo degli accessi

Alcuni DBMS, tra cui PostgreSQL, Alcuni DBMS, tra cui PostgreSQL, consentono l’uso di RBACconsentono l’uso di RBAC

E’ possibile creare dei ruoliE’ possibile creare dei ruoli ruolo utenteruolo utente ruolo grupporuolo gruppo

I diritti si assegnano al ruoloI diritti si assegnano al ruolo Si può assegnare il diritto ad assumere un Si può assegnare il diritto ad assumere un

ruoloruolo

Page 90: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Uso delle visteUso delle viste

E’ possibile creare delle viste per restringere E’ possibile creare delle viste per restringere l’accesso solo ad alcuni dati di una tabellal’accesso solo ad alcuni dati di una tabella

E’ possibile quindi rendere accessibile a E’ possibile quindi rendere accessibile a determinati utenti solo la vista e non la tabella determinati utenti solo la vista e non la tabella da cui provieneda cui proviene

Page 91: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Autenticazione degli utentiAutenticazione degli utenti

Gli utenti sono autenticati con meccanismi Gli utenti sono autenticati con meccanismi simili a quelli visti per i S.O.simili a quelli visti per i S.O.

I DBMS di solito non si fidano I DBMS di solito non si fidano dell’autenticazione del S.O., la effettuano dell’autenticazione del S.O., la effettuano autonomamenteautonomamente

Le informazioni degli utenti sono memorizzate Le informazioni degli utenti sono memorizzate nelle tabelle di sistemanelle tabelle di sistema

Page 92: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

DisponibilitàDisponibilità

La disponibilità deve essere garantita La disponibilità deve essere garantita disciplinando opportunamente gli accessi disciplinando opportunamente gli accessi concorrenti ed evitando che un processo concorrenti ed evitando che un processo “maligno” monopolizzi il DB“maligno” monopolizzi il DB

Page 93: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Dati sensibiliDati sensibili

I database possono contenere dati sensibili, che I database possono contenere dati sensibili, che non dovrebbe essere accessibili al pubbliconon dovrebbe essere accessibili al pubblico

Un problema sorge quando i dati sensibili sono Un problema sorge quando i dati sensibili sono una parte dei dati, ad esempio una parte dei dati, ad esempio alcuni record di una tabellaalcuni record di una tabella alcuni campi di una tabellaalcuni campi di una tabella

Possono esistere vari gradi di sensibilità a Possono esistere vari gradi di sensibilità a seconda del motivo per cui il dato è dichiarato seconda del motivo per cui il dato è dichiarato sensibilesensibile

Page 94: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Accesso ai dati sensibiliAccesso ai dati sensibili

Livelli in base alla sicurezza e alla precisioneLivelli in base alla sicurezza e alla precisione Non disclosedNon disclosed Non può essere trovato attraverso altre queryNon può essere trovato attraverso altre query Potrebbe essere recuperato da altre queryPotrebbe essere recuperato da altre query Restituito come risultatoRestituito come risultato

Problema dell’inferenzaProblema dell’inferenza

Page 95: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Tipi di disclosureTipi di disclosure

Dato esatto: x vale 12Dato esatto: x vale 12 Limiti inferiori o superiori: x è compreso tra Limiti inferiori o superiori: x è compreso tra

10 e 1510 e 15 Risposte negative: x non vale 11Risposte negative: x non vale 11 Esistenza: Caio possiede un cellulare Esistenza: Caio possiede un cellulare Valore probabile: x vale 10 con probabilità Valore probabile: x vale 10 con probabilità

0.250.25

Page 96: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Problema dell’inferenzaProblema dell’inferenza

E’ possibile ottenere dati sensibili attraverso E’ possibile ottenere dati sensibili attraverso l’uso di query opportune che non producono l’uso di query opportune che non producono dati sensibilidati sensibili

Tale problema è sentito nei database statisticiTale problema è sentito nei database statistici fornire pubblicamente dati aggregati a scopi fornire pubblicamente dati aggregati a scopi

statisticistatistici evitare l’accesso ai singoli recordevitare l’accesso ai singoli record

Page 97: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

Name Position Salary Age

Matt Teacher 50K 33

Leonard Teacher 50K 50

Holly Principal 60K 37

Heidi Aide 20K 20

Celia Teacher 40K 45

Page 98: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

SELECT SUM(SALARY) WHERE SELECT SUM(SALARY) WHERE POSITION=‘TEACHER’ si può eseguire POSITION=‘TEACHER’ si può eseguire senza problemisenza problemi

poi SELECT SUM(SALARY) WHERE poi SELECT SUM(SALARY) WHERE POSITION=‘TEACHER’ AND POSITION=‘TEACHER’ AND AGE > 40 non si può eseguire perchè (per differenza con la prima) troviamo lo stipendio di Matt

Page 99: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

SoluzioneSoluzione

La soluzione è quella di tenere traccia di tutte La soluzione è quella di tenere traccia di tutte le interrogazioni effettuate e di proibire le le interrogazioni effettuate e di proibire le interrogazioni che conducono, tramite i interrogazioni che conducono, tramite i risultati di quelle precedenti, ad accedere ai risultati di quelle precedenti, ad accedere ai dati di uno (o pochi) recorddati di uno (o pochi) record

Esistono metodi per inferire dati da somme, Esistono metodi per inferire dati da somme, medie, conteggi, mediane, ecc.medie, conteggi, mediane, ecc.

Page 100: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Altre soluzioniAltre soluzioni

Un altro approccio è quello di usare dati Un altro approccio è quello di usare dati opportunamente modificati prima di calcolare opportunamente modificati prima di calcolare le queryle query esclusione di alcuni datiesclusione di alcuni dati campionamento casuale campionamento casuale perturbazione casuale dei datiperturbazione casuale dei dati

Page 101: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Database multilivelloDatabase multilivello

Si supera la distinzione binaria tra dati Si supera la distinzione binaria tra dati sensibili e non sensibilisensibili e non sensibili

Ogni singolo dato del DB può avere un grado Ogni singolo dato del DB può avere un grado di sicurezzadi sicurezza

Una tupla può essere vista comeUna tupla può essere vista come<v<v11, c, c11, v, v22, c, c22, ..., v, ..., vnn, c, cnn, ct>, ct>

I cI cii rappresentano il livello di sicurezza del rappresentano il livello di sicurezza del dato vdato vii e ct il livello di sicurezza dell’intera e ct il livello di sicurezza dell’intera tuplatupla

Page 102: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

NomeNome EtàEtà Stip.Stip. Cred.Cred.

RossiRossi UU 2727 CC 10K10K SS AA CC

VerdiVerdi UU 3030 CC 20K20K SS CC TSTS

NeriNeri UU 4242 CC 100K100K TSTS AA CC

BondBond TSTS 3535 TSTS 85K85K TSTS AA TSTS

GialliGialli UU 5050 CC 120K120K TSTS AA CC

Si usa il modello di Bell-La Padula (U<C<S<TS)Si usa il modello di Bell-La Padula (U<C<S<TS)

Page 103: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

La tabella in lettura per un utente C èLa tabella in lettura per un utente C è

NomeNome EtàEtà Stip.Stip. Cred.Cred.

RossiRossi UU 2727 CC 10K10K SS AA CC

VerdiVerdi UU 3030 CC 20K20K SS TSTS

NeriNeri UU 4242 CC TSTS AA CC

GialliGialli UU 5050 CC TSTS AA CC

Page 104: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

EsempioEsempio

La stessa tabella può essere vista in modi La stessa tabella può essere vista in modi diversi a seconda del grado di sicurezza diversi a seconda del grado di sicurezza dell’utentedell’utente

Allo stesso modo si dovranno controllare gli Allo stesso modo si dovranno controllare gli accessi in scrittura (proprietà * del modello di accessi in scrittura (proprietà * del modello di Bell-La Padula): ad esempio un utente TS non Bell-La Padula): ad esempio un utente TS non può scrivere un dato con sicurezza S, C o Upuò scrivere un dato con sicurezza S, C o U

Page 105: Sicurezza dei sistemi informatici Master di I° livello in Sistemi e Tecnologie per la sicurezza dell'Informazione e della Comunicazione Quarta lezione.

Realizzazione Realizzazione

Esistono vari modi per realizzare un database Esistono vari modi per realizzare un database multilivellomultilivello Partizionamento: le tabelle sono memorizzate (e Partizionamento: le tabelle sono memorizzate (e

utilizzate) separatamenteutilizzate) separatamente Cifratura di campi sensibiliCifratura di campi sensibili Marcatura con lock di integritàMarcatura con lock di integrità


Recommended