Sicurezza dei sistemi
informatici
Master di I° livello in
Sistemi e Tecnologie per la sicurezza
dell'Informazione e della Comunicazione
Prima lezione
31/3/2007
Contenuto della lezione







Motivazioni
Dati sulla sicurezza
I concetti di sicurezza
Minacce e loro classificazione
Politiche e meccanismi
Modelli teorici di sicurezza
Politiche per la confidenzialità
Sicurezza dell’informazione
20 anni fa

Sicurezza di tipo “fisico”




L’informazione era principalmente su carta
Chiusa a chiave (armadi, casseforti, ...)
La trasmissione fisica abbastanza sicura
Amministrazione della sicurezza



Controllo “fisico” degli accessi alle risorse
Screening del personale
Auditing
Sicurezza dell’informazione oggi



Utilizzo emergente di Internet e dei sistemi
distribuiti
L’informazione digitale deve mantenuta sicura
I costi dell’insicurezza


Stime dell’FBI indicano che un attacco insider può
produrre in media un danno da 2.8 milioni di $
Le perdite annue finanziarie dovute a falle nel
sistema di sicurezza dell’informazione sono
stimate tra i 5 e i 45 miliardi di $
Sicurezza dell’informazione oggi

Sicurezza a livello nazionale

Protezione of infrastrutture critiche





Rete energetica
Trasporto aereo
agenzie governative e connesse con il governo
Molte agenzie non hanno livelli di sicurezza
accettabili
Soprattutto per quanto riguarda la gestione della
sicurezza interna e le misure di controllo di
accesso
Sicurezza di rete


Ovviamente se ogni computer avesse un solo
utente e non fosse collegato ad altri computer,
il problema della sicurezza non si porrebbe
neppure
Questa situazione di isolamento tra gli utenti
dei computer non si è in realtà mai verificata
Sicurezza di rete


Fino agli anni ‘70 i computer erano grandi e molto
costosi main-frame usati da molti utenti che si
connettevano da terminali (molto semplici)
In questa situazione sono state sviluppate molte
tecniche (HW e SW) per garantire la sicurezza di
ciascun utente:




distinguere utente normale dal sistema operativo
autenticare gli utenti
controllare gli accessi
sviluppo di modelli generali di sicurezza
Sicurezza di rete




dagli anni ‘70 ad oggi, i terminali sono
diventati PC intelligenti ed autonomi ed i
mainframe sono scomparsi
i PC sono ora collegati in rete
sulla rete ci sono server che offrono servizi
commerciali delicati per la sicurezza (banche,
e-commerce…)
ma anche solo la posta elettronica nasconde
insidie
Insidie nella sicurezza di rete
1) in un computer multi-utente, uno degli utenti
può assumere l’identità di un altro utente per
carpire informazioni di quest’ultimo o per
spacciarsi per lui
1+) i servizi di rete sono potenzialmente aperti a
tutti, quindi l’insieme degli utenti di un
sistema aumenta arbitrariamente e quindi
anche le interazioni tra utenti diversi e quindi
i pericoli di tipo (1)
Insidie nella sicurezza di rete


2 nuovo) i servizi che usano la rete internet si
basano sulla trasmissione di informazioni che
attraversano reti e router non sempre
controllabili
Per difendersi dai pericoli (1) e (1+)


è fondamentale che ogni utente sia identificato e
che le azioni che gli sono consentite siano decise in
funzione di questa identità
cioè è fondamentale che il SO attui una chiara
politica di sicurezza
Ulteriori problemi



il fatto che i PC siano in rete (possibilmente
insicura) rende più difficile autenticare gli
utenti
le password vanno protette e non devono
passare in chiaro sulla rete
Per evitare (2) si deve trasmettere in rete solo
informazione criptata cioè incomprensibile da
chi non abbia l’apposita chiave di decrittazione
Ridimensioniamo il ruolo della
crittografia


insomma la crittografia è una tecnica
importante per risolvere questi problemi,
ma non risolve tutto … anzi
Se un utente riesce a diventare system manager
di un PC o di una rete
non c’è crittografia che tenga
Definizioni ufficiali di sicurezza
Esistono diverse definizioni di sicurezza e diversi
organismi di valutazione della sicurezza :
•US Department of Defence Trusted Computer
System Evaluation Criteria (Orange Book), 1985.
radium.ncsc.mil/tpep/process/faq.html
•European Information Technology Security
Evaluation Criteria (ITSEC), 1991. cesg.gov.uk
•Canadian Trusted Computer Product Evaluation
Creteria (CTCPEC), 1993.
ftp.cse-st.gc.ca/pub/criteria/CTCPEC
Qualche dato sulla (in)sicurezza




L’impatto economico dei virus, worm e Trojan horse è di
17.1 miliardi di $ nel 2000 (8.75 miliardi solo per il
virus “I Love You”)
In uno studio, una e-mail ogni 325 aveva un attachment
maligno
In un recente studio dell’EU, la metà di ogni messaggio
di e-mail è posta non richiesta che alle imprese europee
più di 2,5 miliardi all’anno in produttività persa
Nella prima metà del 2005 sono state scoperte 1862
nuove vulnerabilità del software, delle quali il 60% in
programmi che girano su Internet
Problemi di sicurezza segnalati nei
media







“Computer Hacker Invades Web Site of the Justice
Department”, NYT, 18 August 1996
“Hacker Group Commandeers The New York Times Web
Site”, NYT, 14 September 1998
“Yahoo Blames a Hacker Attack for a Lengthy Service
Failure”, NYT, 8 February 2000
“A Hacker May Have Entered Egghead Site”, NYT, 23
December 2000
“Stung by Security Flaws, Microsoft Makes Software Safety a
Top Goal”, NYT, 17 January 2002
“Millions of Cisco Devices Vulnerable To Attack”,
Information Week, 18 July 2003
 “A method for shutting down networking devices circulates
on the Internet”
“New Doomjuice Worm Emerges, Targets Microsoft”,Reuters
UK, 9 February 2004
Problemi di sicurezza segnalati dai
media



E innumerevoli altri incidenti che non sono
stati pubblicizzati per paura di imbarazzo
Ogni volta che viene pubblicizzato un
incidente, gli esperti di sicurezza e i rivenditori
di antivirus tendono ad esagerarne i costi
Nel 2002, le compagnie americane hanno
speso più di 4.3 miliardi di dollari solo per gli
antivirus
Cambiamento del tipo di attacchi


Si passa da attacchi multiobbiettivo in grande
scala su grandi sistemi ad attacchi mirati sui
PC
C’è inoltre il passaggio dall’ “hacking”
malizioso ad attacchi criminali con motivi
economici



Furto di identità
Phishing
Denial-of-service
Furto di identità


Nell’aprile 2005, un’intrusione nel database
della LexisNexis ha compromesso le
informazioni personali di circa 310000 persone
Nell’agosto 2004, un’intrusione aveva
compromesso 1,4 milioni di record di
informazioni personali all’università di
Berkeley
Phising



Durante la prima metà del 2005 il volume delle
e-mail “phishing” è cresciuto da circa 3
milioni al giorno a circa 5.7 milioni
Ogni 125 messaggi di e-mail di media uno è
un tentativo di phishing
L’1% of US households sono state vittime of
successful phishing attacks in 2004
Ciber-estorsioni



Durante la prima metà del 2005 gli attacchi
Denial-of-Service (DoS) sono aumentati da
una media 119 a una media 927 al giorno
Il 17% dei siti commerciali hanno ricevuto
minacce di chiusure mediante attacchi DoS
Una compagnia che si rifiuta di pagare gli
estortori spende 100,000 $ all’anno per
difendersi dagli attacchi DoS
Botnets e Zombies



SecurityFocus, 23 January 2006
" Bot herder pleads guilty to 'zombie' sales: A 20year-old California man used automated software to
infect Windows systems and to create botnets —
centrally controlled networks of compromised PCs —
to which he sold access.
" In October 2005, Dutch authorities arrested three
men in the Netherlands who allegedly controlled a
network of more than 1.5 million compromised
computers.
Aggiornamenti

New York Times, 25 September 2006.



ChoicePoint, CardSystems Solutions, Time Warner and dozens of
universities have collectively revealed 93,754,333 private records
The Commerce Department announced that between 2001 and the
present, 1,137 laptops were lost, missing or had been stolen
Symantec Internet Security Threat Report covering the first 6
months of 2006, 25 September 2006.




The Symantec Probe Network detected 157,477 unique phishing
messages
Botnets have become a major part of the underground economy
An average of 6,110 denial-of-service attacks per day
Spam made up 54% of all monitored email traffic
Considerazioni finali



La sicurezza deve essere implementata secondo le
esigenza personali
Non esiste una soluzione che va bene per tutti
La sicurezza è un’area complessa ed estesa che
permea


tutti i livelli di un sistema informatico, compresi quelli
fisici: Hardware-OS-Application-Network-Operator
E come in altri contesti, la sicurezza informatica è per
la sicurezza sia l’anello più forte che quello più
debole
Una rassegna dei concetti di
sicurezza

La sicurezza deve garantire le proprietà di





Confidenzialità
Integrità
Disponibilità
La sicurezza studia le minacce e gli attacchi, in
base ai quali stabilisce delle politiche e dei
meccanismi
Tali meccanismi sono poi implementati e
verificati
Confidenzialità


Si ottiene la confidenzialità nascondendo ai
non autorizzati informazioni o risorse
In molti ambiti esistono informazioni e risorse
“sensibili” a cui non possono accedere tutti



Un modo per nascondere le informazioni è la
crittografia
Un altro modo è controllarne gli accessi
Anche le risorse possono essere soggette a
restrizioni
Integrità

L’integrità richiede che le informazioni o le
risorse “sensibili” non subiscano alterazioni
non autorizzate




Integrità dei dati
Integrità della sorgente
Differenza: si può intercettare un fax in modo
completo che contiene informazioni false
I meccanismi per garantire l’integrità si
dividono in meccanismi di prevenzione e di
scoperta
Integrità

Integrità: è difficile da esprimere in modo
preciso:



è la proprietà che tutto è come dovrebbe essere
Spesso si riduce nel proibire la scrittura senza
autorizzazione
E’ collegata alla segretezza:


modificare il SO è spesso prerequisito per avere
accesso a documenti proibiti
problema: violazione dell’integrità del SO
Disponibilità


Per disponibilità si intende semplicemente la
possibilità di usare una determinata risorsa o
un’informazione nel tempo
Alcuni attacchi, il già citato DoS, tendono a
diminuire e/o ad annullare la disponibilità di
alcune risorse
Minacce




Una minaccia è una possibile violazione della
sicurezza
La violazione non deve necessariamente
accadere: è il fatto stesso che può accadere che
la rende una minaccia
E’ importante salvaguardarsi dalle minacce ed
essere pronti ad eventuali violazioni
La violazione effettiva è chiamata attacco e
coloro che la commettono “attaccanti”
Classi di minacce




Disclosure: accesso non autorizzato alle
informazioni
Deception: accettazione di dati falsi
Disruption: interruzione o prevenzione di
operazioni corrette
Usurpation: controllo non autorizzato di
alcune parti del sistema
Minacce più ricorrenti



Snooping: intercettazione non autorizzata di
informazioni. Disclosure passiva
Modificazione o alterazione: cambiamento non
autorizzato di informazioni. Deception attiva.
Esempio: attacco “man-in-the-middle”
Masquerading o spoofing: impersonificazione di
un’entità da parte di un’altra.
Deception/usurpation passiva o anche attiva.
Esempio: siti “civetta”. Forme legali: delegazione
Minacce più ricorrenti (2)



Ripudiazione dell’origine: falso diniego che
un’entità abbia inviato (o creato) qualcosa.
Deception.
Diniego di ricezione: falso diniego che
un’entità abbia ricevuto qualcosa. Deception
Ritardo: inibizione temporanea di un
servizio. Usurpation.
Denial of service



Diniego di servizio: inibizione a lungo termine
di un servizio. Usurpation. Può essere svolta
sul server, sul client o in mezzo
Si verifica quando un server viene sepolto
sotto un enorme numero di richieste di servizi
che non può trattare e quindi non riesce più a
fare il suo lavoro normale
E’ difficile da evitare in generale
Politiche e meccanismi



Una politica di sicurezza è un’indicazione di cosa è e
cosa non è permesso
Un meccanismo di sicurezza è un metodo
(strumento/procedura) per garantire una politica di
sicurezza
Esempio:



il lab. di inf. di un università stabilisce come politica che
non si possono copiare i file dei compiti di un altro
studente.
Il sistema ha un meccanismo per prevenire la copia di un
file da parte di un altro utente
Anna non usa tale meccanismo e il sistema è violato
Le politiche

Una politica di sicurezza stabilisce regole che
possono riguardare:



le operazioni che si possono usare su certi dati e
l’utente che può usarle
gli utenti che possono accedere a certi dati.
eventuali profili di utente con specifici diritti
Politiche di sicurezza

La politica di sicurezza si focalizza su:




i dati (proteggere)
le operazioni (controllare)
gli utenti/profili (controllare)
Tradizionalmente i SO hanno meccanismi che
proteggono i dati. Oggi diventa più importante
controllare gli utenti
Meccanismi di sicurezza




Data una politica, che distingue le azioni “sicure” da
quelle “non sicure”, i meccanismi di sicurezza devono
prevenire, scoprire o recuperare da un attacco
La prevenzione significa che il meccanismo deve
rendere impossibile l’attacco
Spesso sono pesanti ed interferiscono con il sistema al
punto da renderlo scomodo da usare
Esempio unanimanente accolto: richiesta di password
come modo di autenticazione
Meccanismi di sicurezza (2)



La scoperta significa che il meccanismo è in
grado di scoprire che un attacco è in corso
E’ utile quando non è possibile prevenire
l’attacco, ma può servire anche a valutare le
misure preventive
Si usa solitamente un monitoraggio delle
risorse del sistema, cercando eventuali tracce
di attacchi
Meccanismi di sicurezza (3)

Il recupero da un attacco si può fare in due
modi


Il primo è fermare l’attacco e recuperare/ricostruire
la situazione pre-attacco, ad esempio attraverso
copie di backup
Il secondo è continuare a far funzionare il sistema
correttamente durante l’attacco (fault-tolerant)
Assunzioni e fiducia



Come possiamo essere certi che la politica
descrive correttamente il livello e il tipo richiesto
di sicurezza ?
Esempio: per aprire una porta occorre una chiave,
l'assunzione ritenuta da molti valida è che il
lucchetto sia a prova di ladri
In un ambiente in cui ci sono abili scassinatori
tale assunzione non è più valida e il sistema non
si può più ritenere sicuro
Assunzioni e fiducia (2)



Un meccanismo M è sicuro (rispetto ad una
politica P) se non può condurre a stati non
ammessi da P
M è liberale se può condurre anche a stati non
ammessi da P
M è preciso gli stati a cui può condurre
coincidono con quelli ammessi da P
Come ottenere un sistema sicuro

Fasi




Specificazione: descrizione del funzionamento
desiderato del sistema
Progetto: traduzione delle specifiche in
componenti che le implementeranno
Implementazione: creazione del sistema che
soddisfa le specifiche
E’ indispensabile verificare la correttezza dei
programmi
Considerazioni implementative





Analisi costi-benefici della sicurezza
Analisi dei rischi (valutare le probabilità di subire
attacchi e i danni che possono causare)
Aspetti legali (ad esempio uso della crittografia negli
USA) e morali
Problemi organizzativi (ad esempio la sicurezza non
“produce” nuova ricchezza, riduce solo le perdite)
Aspetti comportamentali delle persone coinvolte
Aspetti psicologici




La sicurezza viene difficilmente apprezzata
La maggior parte degli utenti di internet non
sanno nulla di sicurezza, ma hanno bisogno di
sicurezza
Esiste un conflitto tra sicurezza e facilità d’uso
del computer
Sono necessarie maggiori risorse di calcolo,
interagisce con le abitudini, la gestione della
sicurezza costa
Aspetti psicologici (2)

D’altra parte la sicurezza è necessaria perché
c’è una continua crescita delle violazioni
della sicurezza informatica



Esistono software d’attacco disponibili su rete
Si riscontrano anche attacchi molto sofisticati
che arrivano a cancellare le tracce
Quindi in percentuale cresce il numero degli
attacchi che hanno successo ed arrivano a
compromettere il sistema attaccato
Rintracciabilità

Certe “garanzie” possono non bastare:




anche azioni autorizzate possono causare
violazioni di sicurezza
ci può essere un “buco” nei controlli che abbiamo
stabilito
Impossibile la sicurezza al 100%
E’ importante riuscire a tenere traccia di chi ha
fatto le azioni che violano la sicurezza :
Rintracciabilità (Auditing)
Rintracciabilità

L’auditing richiede:



selezione delle azioni pericolose
protezione dei file di log
Inoltre richiede l’autenticazione degli utenti in
modo da poter collegare le azioni pericolose a
chi le ha compiute
Sicurezza e livelli

in quale livello del computer
conviene inserire un
meccanismo di controllo ?
applicazioni
servizi
SO
kernel del SO
hardware
Sicurezza e livelli


livelli bassi: meccanismi di sicurezza generali,
semplici, grossolani, ma dimostrabili corretti
livelli alti: meccanismi ad hoc per gli utenti,
sofisticati, difficili da dimostrare corretti
Sicurezza e livelli




il livello sottostante:
ogni meccanismo di controllo definisce un
perimetro di sicurezza
al suo esterno ci sono le parti del sistema il cui
malfunzionamento non compromette il
meccanismo di controllo
al suo interno ci sono invece le parti del
sistema che possono essere usate per
scardinare il meccanismo di protezione
Sicurezza e livelli


ogni meccanismo di controllo si situa ad un
certo livello del computer, i livelli sottostanti
sono sempre nel perimetro di sicurezza del
meccanismo.
come difendere i livelli sotto quello in cui si
trova il meccanismo di controllo
Attacchi al livello sottostante
 Strumenti di recupero che leggono direttamente il
contenuto dei dischi o della RAM (byte per byte)
ignorando l’organizzazione logica in files che questi
bytes rappresentano e quindi evitando il controllo
sull’accesso dei files stessi
 I dispositivi di I/O in Unix sono trattati come files, se
i permessi d’accesso ad un disco sono definiti male ed
un utente ottiene accesso al disco, esso può avere
accesso a tutti i files che vi risiedono
indipendentemente dal permesso di accedere ad ogni
singolo file
Attacchi al livello sottostante

Riuso degli oggetti: in sistemi a
multiprogrammazione un processo ottiene la
CPU a spese di un altro processo cui viene
sottratta. Un context switch copia lo stato del
vecchio processo su file ed inizializza il nuovo
processo. Lo switch non deve lasciare residui
in memoria, cioè il nuovo processo non deve
poter conoscere lo stato del processo che lo
precede
Attacchi al livello sottostante

Backups e core dumps basta che l’attaccante
acceda ai files di backup o a dei core dumps
(effettuati in caso di terminazione anomala dei
programmi)
Visione finale
computer
risorse
utente
applic.
specifico
complesso
???
generico,
semplice
semplicità e buona garanzia, oppure
specificità e minore garanzia ?
Modello di
Harrison-Ruzzo-Ullman



E’ uno dei modelli teorici più semplici per la
sicurezza informatica
Si basa sui semplici concetti di soggetto,
oggetto, diritto e matrice di controllo
E’ alla base dei metodi di gestione della
sicurezza nei sistemi operativi (capabilities,
access control list, ...)
Stati

Uno stato di un sistema è composto dai valori
correnti






di tutte le locazioni di memoria
dei registri
del contenuto delle memorie di massa
del contenuto dei dispositivi
Di altre componenti del sistema
Insieme degli stati P


Insieme degli stati sicuri Q
Insieme degli stati insicuri P-Q
Q
P-Q
Entità




Insieme di oggetti O
Insieme di soggetti S, sottoinsieme di O
Insieme di diritti R, operazioni che un soggetto
s può compiere su un oggetto o
Esempio



O={file1, file2, process1, process2},
S={process1, process2},
R={read, write, own, append, execute}
Matrice di controllo degli accessi



Matrice A[s,o] per ogni soggetto s ed ogni
oggetto o
Il contenuto di A[s,o] è un sottoinsieme di R e
specifica quali operazioni s può compiere su o
L’operazione own assume di solito il
significato di possesso totale dell’oggetto e
quindi anche la possibilità di cambiare i diritti
dei vari soggetti su tale oggetto
Esempio di matrice
process1
file1 file2
rd,wr, rd
own
process1
rd, wr, ex,
own
process2
wr
process2
app
rd
rd,wr, ex
own
rd,own
Spiegazione


E’ chiaro cosa vuole dire che un processo può
svolgere le operazioni di read, write, execute e
append su un file
Verso un processo read vuol dire ricevere
segnali, write spedire e execute eseguirlo come
sottoprocesso
Hostnames
Altro esempio
Toadflax
own
Nob
ftp
Telegraph
ftp
Toadflax
Nob
ftp, nsf, mail, ftp, nfs, mail
own
Telegraph
ftp, mail
ftp, nsf, mail,
own
Stati e comandi


Stato X=(S,O,A)
Primitive di modifica dello stato






creare un nuovo soggetto
creare un nuovo oggetto
aggiungere un diritto r a A[s,o]
eliminare un diritto r da A[s,o]
eliminare un soggetto
eliminare un oggetto
Transizioni di stato



Un comando incondizionato è una primitiva o
una sequenza di primitive
Un comando C cambia lo stato corrente S in
un nuovo stato S’
S |--C S’
Una sequenza di comandi C1,...,Cn cambia lo
stato corrente S in un nuovo stato Sn
S |--C1 S1 |--C2 ... Sn-1 |--Cn Sn
Comandi condizionali


if r in A[s,o] then
primitiva1;
...;
primitivaN
if r1 in A[s1,o1] and ...
and rk in A[sk,ok] then
primitiva1;
...;
primitivaN
Esempio
comando CREA(soggetto s,file f)
crea nuovo oggetto f
aggiungi own a A[s,f]
comando CONFERISCI(soggetto s,soggetto s’,file f,diritto r)
if own in A[s,f] and r in A[s,f] then
aggiungi r a A[s’,f]
comando RIMUOVI(soggetto s,soggetto s’, file f, diritto r)
if own in A[s,f] and r in A[s’,f] then
elimina r da A[s’,f]
Diritti di copia e di possesso



Il diritto di copia (o grant) consente al
possessore di un oggetto o di concedere ad altri
soggetti un diritto r su o
Per il principio di attenuazione il possessore
di o può concedere solo diritti che lui possiede
su o
Il diritto di possesso consente al possessore di
o di auto-concedersi o sottrarsi diritti su o
La domanda fondamentale



Un sistema informatico è definito con un
insieme finito di comandi validi C e un
insieme finito di diritti R
Come possiamo stabilire se è sicuro ?
Ad esempio se esiste una sequenza di comandi
che conduce ad una violazione di sicurezza ?
La domanda fondamentale



Esiste un algoritmo in grado di determinare se
il sistema è sicuro ?
In generale la risposta è NO, in quanto
definendo in modo ragionevole quando un
sistema è sicuro, si ottiene un problema
indecidibile
Ad esempio una violazione è quando un utente
ottiene un diritto per cui non era autorizzato
Modello take-grant


E’ però possibile costruire dei modelli
vincolati di cui è possibile dimostrare la
sicurezza in modo algoritmico
Un esempio abbastanza semplice è il modello
take-grant in cui è possibile



definire se un utente può prendere (take) o
concedere (grant) diritti da/a un altro utente
che un utente crei un nuovo oggetto, autoconcedendosi diritti su di esso
che un utente tolga a se stesso un diritto su un
oggetto
Modello take-grant
Modello take-grant
Decidibilità del modello


E’ possibile costruire un grafo che rappresenta
i diritti che i soggetti hanno sugli altri soggetti
e sugli oggetti
Ragionando su tale grafo e sull’insieme di
comandi validi è possibile verificare in
maniera efficiente se c’è la possibilità di
“furti” di diritti da parte di non autorizzati e di
“cospirazioni” tra utenti
Cenni al Schematic Protection
Model

Si basa sui concetti di






ticket X/r: indica il diritto r sull’entità X
tipi di soggetti e di oggetti
link di collegamento tra soggetti
filtro sui link
X/rc indica che il diritto su X può essere copiato ad
altri
I diritti sono suddivisi in


inerziali: non cambiano lo stato di protezione del sistema
di controllo: cambiano (come take o grant)
Cenni al SPM

Un diritto r può essere concesso da Y a Z sulla
risorsa X se




Y possiede il ticket X/rc
Y è collegato a Z
è ammesso dal filtro il trasferimento di r su X da
oggetti del tipo di Y a quelli del tipo di Z
Esiste un algoritmo in grado di decidere se un
sistema SPM con un certo repertorio di
comandi validi è sicuro
Politiche di sicurezza

Una politica partiziona l’insieme degli stati Q
in due parti




P, stati sicuri
Q-P, stati insicuri
Un sistema sicuro è un sistema che partendo
da uno stato sicuro non entra mai in uno stato
insicuro
Una falla nella sicurezza è quando un sistema
entra in uno stato insicuro
Politiche per la sicurezza

Una politica P garantisce




la confidenzialità di I rispetto a X se nessun
membro di X può accedere a I
l’integrita di I rispetto a X se ogni membro di X ha
fiducia del contenuto di I
la disponibilità di I rispetto a X se se ogni membro
di X può accedere ad I
Un meccanismo di sicurezza M è un entità o
una procedura che rinforza una parte della
politica P
Tipi di politiche



Politiche militari/governative: incentrate
primariamente sulla confidenzialità
Politiche commerciali: incentrate
maggiormente sull’integrità
Sono importanti anche ai fini commerciali le
politiche di integrità orientate alle transazioni
(consistenza delle transazioni)
Tipi di controllo sugli accessi

Controllo di accesso discrezionale (DAC),
detto anche controllo di accesso basato
sull’identità (IBAC):



ogni utente può avere diritti diversi sugli oggetti
è il possessore dell’oggetto che stabilisce i diritti
per se e per gli altri soggetti
in base all’identità dell’utente che tali diritti sono
controllati
Tipi di controllo sugli accessi

Controllo di accesso mandatorio (MAC), detto
anche rule-based access control



il sistema controlla gli accessi di un soggetto s ad
oggetto o in base alle informazioni su s e su o
il singolo individuo non può alterare i diritti
il possessore non può assegnare i diritti in maniera
arbitraria agli altri soggetti
Politiche per la confidenzialità


Uno dei modelli più semplici è quello di BellLa Padula
Ci sono n livelli di sicurezza,




L1 è il livello più basso,
...,
Ln è il livello più alto, quello per cui è maggiore la
necessità di confidenzialità
Ad esempio UC (non classificato) < C
(confidenziale) < S (segreto) < TS (top secret)
Modello di Bell-La Padula



Ogni soggetto s ha un proprio livello di
sicurezza L(s) che rappresenta il livello
massimo a cui può lavorare
Ogni oggetto o ha un proprio livello di
sicurezza L(o) che rappresenta il livello di
confidenzialità che contiene
Ogni soggetto s ha eventuali diritti
discrezionali di lettura e/o scrittura sugli
oggetti o
Esempio
Livelli di
sicurezza
TOP SECRET
Soggetti
Oggetti
Tamara, Thomas
File personali
SECRET
Sally, Samuel
File e-mail
CONFIDENTIAL Claire, Clarence
File di log
UNCLASSIFIED Ursula, Urk
Elenco telef.
Regole di base
di Bell-La Padula



Il soggetto s può leggere l’oggetto o se
L(o)<=L(s) e se ha diritto discrezionale di
leggere o (proprietà di sicurezza semplice)
Ad esempio Claire non può leggere i file
personali, mentre Tamara può leggere i file di
log
Cosa succederebbe se Tamara copiasse una
parte dei file personali sui file di log ?
Regole di base



Il soggetto s può scrivere l’oggetto o se
L(o)>=L(s) e se ha diritto discrezionale di
scrivere o (proprietà *)
Quindi tutto quello che può scrivere Tamara è
Top Secret (file personali), che solo Thomas,
oltre a lei può leggere
Un sistema è sicuro se qualunque cosa accada
(cioè in qualunque stato sia possibile transire
attraverso i comandi validi) le due proprietà
(semplice e *) continuano a valere
Categorie di oggetti


Ogni oggetto è classificato in una o più
categorie a seconda del contenuto
Ad esempio NUC, EUR e US
{NUC,EUR,US}
{NUC,EUR}
{EUR,US}
{NUC,US}
{EUR}
{NUC}
{US}
0
0 { }
Categorie di oggetti



Ogni soggetto ha un livello e un insieme di
categorie a cui può accedere
Ogni oggetto ha un livello e un insieme di
categorie di cui tratta
Principio del “need-to-know”: ogni soggetto
deve sapere solo quello di cui ha strettamente
bisogno
Esempio





George ha livello (Secret, {NUC, EUR})
Paul ha livello (Secret, {EUR, NUC, US})
DocA ha livello (Confid, {NUC})
DocB ha livello (Secret, {EUR, US})
DocC ha livello (Secret, {EUR})
Dominanza


In una coppia (L,C), L è un livello di sicurezza
e C è un sottoinsieme di categorie
La coppia (L,C) domina la coppia (L’,C’) se




L’<=L e
C’ è un sottoinsieme di C
Ad esempio George domina DocA in quanto
Conf < Secret e {NUC} è un sottoinsieme di
{NUC, EUR}
George non domina DocB
Regole




s può leggere o se (L(s),C(s)) domina
(L(o),C(o)) e s ha il diritto discrezionale di
lettura su o
Ad esempio George potrebbe leggere DocA e
DocC, ma non DocB
s può scrivere o se (L(o),C(o)) domina
(L(s),C(s)) e s ha il diritto discrezionale di
scrittura su o
Paul non può scrivere DocA
Sicurezza


Se ogni comando valido preserva la condizione
di semplice sicurezza e la proprietà * allora il
sistema è sicuro e non si possono avere
intrusioni
Un problema grave è che un soggetto S non
può mai comunicare con soggetti S’ di livello
di sicurezza inferiore
Principio di tranquillità




Bisognerebbe cambiare i livelli di sicurezza di
un oggetto
Ma si può ?
Principio di tranquillità forte: NO !
Principio di tranquillità debole:



Se ciò non viola le regole delle politiche di
sicurezza, ad esempio
Alzare il livello di un oggetto
Abbassare (dopo declassificazione) il livello di un
oggetto
Scarica

Sicurezza dei sistemi informatici - Dipartimento di Matematica e