6
Lo studio poi passa nello specifico a trattare i Firewall, cioè quelle
particolari strutture da implementare per rendere efficace una
politica di sicurezza (Capitolo 3) vengono presentate tutte le varie
architetture possibili per un firewall, ognuna con i suoi vantaggi ed
i suoi limiti.
Più nello specifico vengono presi in esame i protocolli di sicurezza
implementati dalla CISCO
, per rendere attuabile una politica di
sicurezza; si passa dalle Access List più semplici a modelli evoluti
che permettono operazioni più complesse, fino ad arrivare ai
protocolli Radius e Tacacs.
Nel capitolo 5 infine viene proposta la configurazione di un router
CISCO tramite una Access List, e vengono fatte misurazioni sui
ritardi introdotti da tale apparecchiatura sul trasferimento di
diversi tipi di file.
Un particolare ringraziamento all' ING. Davide Adami che mi ha
aiutato durante tutto lo sviluppo della tesi, ed a tutti i componenti
del laboratorio di Informatica del dipartimento di Radiologia:
Ruggero, Marco, Maurizio, Riccardo Claudio e Letizia mi hanno
aiutato durante il mio periodo di permanenza presso di loro.
7
Capitolo 1
Generalità sui servizi Internet
8
1.1 Modelli per i servizi internet
I servizi telematici fruibili attraverso la rete Internet sono organizzati in
accordo ad un comune modello di iterazione definito client-server, modello
che definisce due unità distinte:
ξ l' utente che richiede il servizio (client)
ξ il gestore che fornisce il servizio (server)
L' interazione si manifesta attraverso lo scambio di messaggi prestabiliti,
affinché il servizio sia utilizzabile. Per rendere disponibile uno specifico
servizio internet è necessario che il gestore attivi preliminarmente un
opportuno software (applicazione server), e che l' utente a sua volta attivi l'
applicazione client sulla propria macchina e contattare la stazione server
prescelta.
Client Server
Input utente
Output utente
Richiesta client
Richiesta server
Fig1-1 Interazione client-server
Una variante del modello client server molto diffusa è il modello client-server
con cache. In questo modo più richieste successive alla stessa informazione
non necessitano di molteplici accessi consecutivi alla stazione server.
9
Risposta 1 in cache
Risposta 2 non in
cache
Server
Richiesta client
Risposta server
Cache
U
T
E
N
T
E
Input 1
Input 2
Fig 1-2 client server con cache .
La presenza di una copia delle informazioni un cache introduce un ulteriore
punto in cui può avvenire l'attacco di un hacker.
La cache può anche essere utilizzata come area locale dove trasferire
preventivamente le informazioni collegate alla richiesta corrente effettuata
dall' utente .
Un' altra variante è il modello client-proxy-server. Secondo questo modello
esiste una terza entità coinvolta nel servizio, definita proxy, responsabile di
agire per procura delle altre stazioni. Questa entità si interfaccia infatti sia con
il client che con il server. Il proxy è responsabile di accettare le richieste da
parte di uno o più client e inoltrarle alle stazioni server. Le risposte del server
vengono consegnate al proxy, che si fa carico di trasferirle successivamente ai
client interessati. La macchina che agisce da proxy può a sua volta ospitare
una cache un'area comune che può essere utilizzata da molteplici client. Il
proxy e i dati memorizzati nella sua cache possono essere entrambi oggetto
degli attacchi di hacker.
Infine un' altro modello alternativo può essere rappresentato dal servizio
broadcast, inizialmente sviluppatosi per consentire servizi di distribuzione di
informazioni radio-Tv, ha trovato un certo riscontro nelle applicazioni
informatiche. A differenza di quanto avviene con il modello client-server in
cui il reperimento delle informazioni avviene soltanto al momento dell' invio
delle richieste da parte del client, con il modello broadcast le piattaforme che
gestiscono inviano le informazioni in maniera non sollecitata.
10
1.2 Possibili Attacchi
I servizi internet prevedono il coinvolgimento delle unità client e server che si
devono scambiare una serie di messaggi prestabiliti. L'ordine e il contenuto
dei messaggi scambiati sono definiti da protocolli condivisi che descrivono le
modalità di fruizione del servizio . Affinché il servizio sia utilizzabile da
qualsiasi utente, occorre che:
ξ Tutti i partecipanti siano messi a conoscenza del protocollo e dei passi
in cui si articola;
ξ Tutti i partecipanti condividano il protocollo senza limitazioni;
ξ Il protocollo non sia ambiguo e ogni passo sia descritto con tutti i
particolari necessari alla sua corretta implementazione sul client e sul
server;
ξ Il protocollo sia completo, definendo il comportamento delle parti in
gioco in ogni possibile situazione che si può presentare;
Gli utenti che seguono le regole e sottostanno alle direttive generali del
protocollo vengono definiti utenti legittimi. Nonostante la definizione di
protocolli standard per ogni singolo servizio, esiste sempre la possibilità
che qualcuno interpreti le regole in modo sbagliato. Questa eventualità
può accadere inavvertitamente o cercata volutamente. Gli utenti che
rientrano nella seconda categoria sono detti hacker. Il loro
comportamento, mirante a sovvertire le regole, può avere motivazioni
diverse:
ξ Ottenere accesso non autorizzato ad informazioni (violando privacy e
segretezza);
ξ Identificarsi come altro utente, in modo da addossargli responsabilità
del proprio operato;
11
ξ Utilizzare l' identità di un' altro utente per immettere informazioni
false o effettuare transazioni senza averne il diritto;
ξ Modificare i diritti di altri utenti per l' accesso a specifici servizi senza
averne l'autorità;
ξ scoprire la presenza di particolari informazioni all' interno dei
messaggi scambiati da altri utenti ;
ξ Inserirsi in maniera attiva, modificando i dati in transito, nella
comunicazione di altri utenti;
ξ Registrare identità di utenti che accedono ad informazioni di natura
particolare;
ξ Sovvertire le funzionalità di applicativi client e/o server;
ξ Rendere impossibile l' utilizzo di un particolare servizio;
Le numerose forme di attacco che possono essere condotte da un hacker sono
classificabili in base alla funzionalità del servizio che mirano a
compromettere.
ξ Interruzione del servizio (denial of service): questo tipo di attacco
mira a compromettere la Disponibilità del servizio (fig1,3).
Hacker
Figura 1-3
ξ Intercettazione dei dati (eavesdropping): mira a compromettere la
Confidenzialità dei dati (fig1,4).
12
11001011
1
1
0
0
1
0
1
1
Hacker
Figura 1-4
ξ Modifica delle informazioni (Data Manipolation): mira a
compromettere l' Integrità dei dati e dei programmi coinvolti nel
servizio (fig1,5).
11001011 11010111
Hacker
Figura 1-5
ξ Inserimento di informazioni false (masquerade): mira a
compromettere l' autenticità dei dati, compromettendo le funzionalità
di Non Ripudio e di Autenticazione (fig1,6).
Hacker
11001011
Figura 1-6
Per attuare un' interruzione del servizio un hacker dispone di diversi
strumenti: la distruzione dei collegamenti fisici, la manomissione dei
dispositivi di interconnessione, la saturazione del canale di trasmissione, la
13
saturazione dei buffer dei server, l'invio di messaggi di terminazione delle
applicazioni coinvolte (client e server). Per attuare un'intercettazione si
possono alterare la applicazioni server oppure installare software
ingannevole sul client. Molto più semplice un attacco mirante all' inserimento
di informazioni false basta l' identità di un 'altra entità.
Tra le quattro forme di attacco l' intercettazione è l' unico definito come
attacco passivo, mentre gli altri sono definiti attivi.
14
1.3 Definizione di una politica di sicurezza
Per un organizzazione (azienda , ente pubblico ecc.) avere accesso ai servizi
Internet è fondamentale per la sua crescita e sviluppo, per pensare di potervi
rinunciare. Allo stesso tempo non è possibile sottovalutare l' aspetto della
sicurezza. Senza rinunciare all' offerta internet, è possibile realizzare un
accesso alla rete mantenendo, al tempo stesso un adeguato livello globale di
sicurezza scartando quei servizi che si ritengono non indispensabili o troppo
vulnerabili. Bisogna dunque arrivare ad una politica di sicurezza complessiva,
che definisca il modo di comportarsi dell' organizzazione.
Una politica di sicurezza ha struttura che si articola su vari livelli:
ξ Un programma generale che definisce il campo di applicazione delle
varie direttive, le responsabilità delle persone coinvolte, le regole per
determinare la conformità delle specifiche.
ξ La definizione delle direttive riguardanti le diverse aree; qui è
possibile definire l' atteggiamento verso nuove tecnologie e servizi. Se
il programma generale viene stabilito una volta per tutte le direttive
verso le specifiche aree devono essere costantemente aggiornate.
ξ Parte tecnica che includa le regole da adottare per ogni risorsa da
proteggere; è l' area da aggiornare con maggiore frequenza.
In ogni caso la stesura di una politica di sicurezza non è mai definitiva.
Oltre a queste parti principali, occorre anche definire non solo a chi spetta il
compito di attuare le direttive, ma anche chi avvisare per ogni problema
riscontrato; uno dei principali strumenti per la lotta agli hacker è lo scambio
continuo di informazioni per sviluppare contromisure sempre più efficaci ed
all' avanguardia. Occorre dunque far maturare gli utenti in modo da
coinvolgerli attivamente.