Firewall

Transcript

Firewall
SICUREZZA
Problematiche generali
Categorie di sistemi informatici
architettura centralizzata
Problematiche generali
!Categorie di sistemi informatici
"
architettura centralizzata
In questo tipo di architetture si ha un Centro di
Elaborazione Dati (CED), che normalmente
viene mantenuto in un luogo sotterraneo o
protetto fisicamente, ad esempio, da porte
blindate e accessi controllati, dentro cui sono
conservate tutte le unità di elaborazione e tutte
le unità di memorizzazione dei dati.
Gli utenti accedono e sfruttano queste risorse
informatiche tramite dei terminali, quindi una
tastiera ed un video, non un vero e proprio
Personal Computer o una work-station.
4
Problematiche generali
La sicurezza è di tipo fisico o, al massimo, del
sistema operativo del sistema di elaborazione e gli
utenti hanno a disposizione dei meri dispositivi di
input/output.
5
Architetture distribuite
Problematiche generali
Architetture distribuite
"
I sistemi di elaborazione e di memorizzazione sono
sparsi, sia all'interno di una rete locale (LAN) ma
anche su una rete geografica (WAN), diventa quindi
difficile controllare fisicamente tutti quanti i sistemi.
Le postazioni di lavoro dell'utente sono dei Personal
Computer e quindi l’utente ha la possibilità di
attivare localmente, presso la sua stazione di
lavoro, dei programmi. Questi potrebbero essere
dei programmi di attacco, cioè che inficiano la
sicurezza del sistema complessivo.
Per architetture di tipo distribuito, bisogna quindi
ripensare completamente alla sicurezza, in modo
tale che sia indipendente dalla locazione fisica dei
sistemi di elaborazione e sia indipendente anche
dalle reti a cui ci si collega.
7
Sicurezza: dove è il nemico?
Sicurezza: dove è il nemico?
Se dobbiamo mettere in piedi un sistema di
sicurezza, una delle cose più importanti è
identificare dove si trova il nemico da cui vogliamo
difenderci.
9
Sicurezza: dove è il nemico?
Fuori dalla nostra rete
In questa ipotesi ciò che bisogna fare è cercare di
proteggere la nostra rete dalle intrusioni che
potrebbero provenire dall'esterno. È questo il caso
tipico in cui trovano applicazione i cosiddetti
firewall, letteralmente muri taglia-fuoco, porte
antincendio.
"Dentro la nostra rete
Nell'ipotesi che all'interno della nostra
organizzazione ci sia qualcuno che possa volere
attaccare il sistema dall'interno, la messa in opera
di un sistema di tipo firewall non è più sufficiente,
bisogna riuscire a fare protezione della rete locale o
della Intranet.
L'unica soluzione applicabile è la protezione delle
applicazioni.
"
10
Sicurezza: dove è il nemico?
Se riusciamo a proteggere le nostre applicazioni,
abbiamo reso il sistema sicuro, indipendentemente
dalle reti che attraversiamo e dalle postazioni di
lavoro dove operiamo.
11
Autenticazione semplice
Autenticazione semplice
Si parla di autenticazione, ed in particolare di
autenticazione semplice, ogniqualvolta un utente
desidera accedere ad un sistema di elaborazione.
Un corretto sistema di autenticazione non deve
credere ciecamente a quello che l'utente dice di
essere, ma deve chiedere una prova formale.
Per ottenere questa prova formale si useranno dei
sistemi di autenticazione precisi, esatti e
soprattutto non falsificabili facilmente.
Normalmente un sistema di elaborazione ci chiede
“Username” e “Password”.
13
Mutua autenticazione
Mutua autenticazione
Non soltanto l'utente deve presentarsi nei confronti
del sistema, ma l'utente potrebbe avere un
ragionevole dubbio che il sistema cui lui sta facendo
il collegamento, non sia quello a cui desidererebbe
collegarsi.
Questo perché è possibile mettere in piedi una rete
di calcolatori, i cosiddetti server-ombra, o anche
server-fantasmi i quali con tecniche opportune
mostrano un'interfaccia simile a quella del sistema
originale e quindi sarebbero in grado di fornirci dei
dati sbagliati, mentre noi in assoluta buona fede
crediamo di esserci collegati al sistema giusto.
15
Autorizzazione
Autorizzazione
Una volta che abbiamo fatto l'autenticazione degli
utenti e dei sistemi a cui si stanno collegando,
bisogna decidere se questi utenti, o questi sistemi,
hanno diritto a svolgere certe operazioni.
Si parla quindi di autorizzazione per decidere se, in
base ai dati di autenticazione che sono stati forniti,
è lecito ottenere il controllo di un certo oggetto o
attivare una certa procedura di elaborazione.
17
Riservatezza
Riservatezza
Un'altra proprietà di sicurezza rilevante nei sistemi
informativi è la riservatezza.
Con la riservatezza si intende il fatto che una
comunicazione, o comunque dei dati memorizzati
all'interno di un sistema di elaborazione, non
possano essere visualizzati, catturati, da persone
che non hanno diritto di accedere a questi dati.
19
Integrità
Integrità
Attacchi che comportano delle modifiche, delle
cancellazioni.
"
Bisogna avere dei sistemi che siano in grado di
rilevare se dei messaggi sono stati modificati o
cancellati.
Questo tipicamente viene fatto a livello applicativo,
nel senso che quando ad esempio si manda un
ordine di pagamento, si aspetta una conferma che il
pagamento sia stato effettivamente ricevuto, ma a
livello basso, a livello di pacchetti di rete, la
cancellazione di pacchetti è una cosa che può anche
essere dovuta a guasti di rete e quindi i sistemi non
sanno bene distinguere un attacco da un semplice
guasto.
21
Integrità
Attacchi di tipo replay
"
Una persona che lavori all'interno della rete di
elaborazione potrebbe semplicemente catturare dei
bit e, in tempo successivo, rimetterli in circolo in
rete.
Tipo di attacco molto difficile da parare.
22
Tracciabilità
Tracciabilità
Altre proprietà di sicurezza desiderata all'interno di
un sistema informativo sono: la tracciabilità e il non
ripudio.
Per tracciabilità si intende il fatto che quando una
persona compie delle operazioni all'interno di un
sistema di elaborazione, noi vorremmo poter essere
in grado di seguire le sue orme, le sue tracce.
Vorremmo poter essere in grado di evidenziare
quali operazioni sono state compiute e da quali
persone, all'interno del nostro sistema di
elaborazione.
Noi possiamo volerlo dimostrare sia in maniera
informale, soltanto per dei nostri controlli interni,
oppure vogliamo poter dimostrare le azioni che
sono state compiute in modo inoppugnabile, ad
esempio in modo che possa essere utilizzato anche
come prova a carico o a discarico di un certo
elemento, in tribunale.
24
Alcune tipologie di attacco
IP spoofing-Packet sniffing
Si parla di attacchi di tipo IP spoofing quando il
nodo di elaborazione che sta conducendo l'attacco
falsifica il proprio indirizzo IP, cioè il proprio
indirizzo di rete, per far finta di essere un'altra
macchina, tipicamente uno shadow-server o serverombra.
Si parla invece di packet sniffing, letteralmente
annusamento dei pacchetti e quindi cattura dei
pacchetti, quando un qualunque nodo di
elaborazione collegato ad una rete di tipo
broadcast, come sono in realtà gran parte delle reti
locali, svolge delle operazioni di cattura dei
pacchetti e quindi dei dati in essi contenuti, durante
il loro transito davanti alla sua postazione di lavoro.
26
Connection hijacking- Denial-of-service
Si parla di connection hijacking o di data
spoofing quando un nodo di elaborazione non
soltanto svolge un'operazione di cattura dei
pacchetti che stanno transitando, ma addirittura
emette dei pacchetti falsi all'interno di un
collegamento già stabilito.
Si parla invece di attacchi denial-of-service per
quegli attacchi che sono mirati a togliere la
disponibilità di un certo sistema informatico,
tipicamente degli attacchi che portano al crash o al
blocco di un sistema di elaborazione.
27
Connection hijacking- Denial-of-service
Statisticamente si vede che la maggior parte degli
attacchi informatici più banali vengono condotti
semplicemente sfruttando bachi del software.
Questo è un grosso problema: i normali sistemi
informativi tendono ad essere sviluppati con
sempre minor cura nella parte di sviluppo del
software, questo perché c'è sempre maggior
pressione per arrivare più in fretta alla nuova
release del prodotto e i codici divengono sempre
più grossi. Bisogna però ricordarsi che ogni baco
software che è rimasto all'interno di un programma
può essere sfruttato da un attaccante per
conquistare o mettere in ginocchio il nostro
sistema.
28
SICUREZZA E FIREWALL
Sicurezza
In generale, la sicurezza ha a che fare con i
seguenti aspetti:
• controllo del diritto di accesso alle
informazioni;
• protezione delle risorse da danneggiamenti
(volontari o involontari);
• protezione delle informazioni mentre esse
sono in transito sulla rete;
• verifica che l'interlocutore sia veramente chi
dice di essere.
30
Sicurezza
In molte situazioni in cui esiste una rete aziendale
connessa con una rete esterna (ad esempio
Internet), può sorgere la necessità di:
• proteggere le informazioni riservate da accessi
provenienti dall'esterno della rete aziendale,
consentendo solo l'accesso a informazioni
pubbliche;
• limitare l'accesso, da parte degli elaboratori
posti sulla rete aziendale, alle informazioni
presenti sulla rete esterna.
• Questo si può ottenere per mezzo di un
firewall (parete tagliafuoco), che è
l'incarnazione moderna del fossato pieno
d'acqua (e magari anche di coccodrilli) e del
ponte levatoio che proteggevano gli antichi
castelli.
31
Sicurezza
Il principio è lo stesso:
forzare il passaggio di tutto ciò che transita
"
(esseri umani nell'antichità, traffico di rete
oggi) attraverso un unico punto di ingresso e
uscita, dove si provvede ad effettuare gli
opportuni controlli.
Il firewall si inserisce fra la rete aziendale e
"
quella esterna. In tal modo, tutto il traffico
dall'una all'altra parte deve per forza transitare
attraverso il firewall.
32
FIREWALL
Dispositivi in grado di bloccare informazioni
nocive che transitano in Internet
Firewall
I firewall sono dispositivi software od hardware
posti a protezione dei punti di interconnessione
eventualmente esistenti tra una rete privata interna
(ad es. una Intranet) ed una rete pubblica esterna
(ad. es. Internet) oppure tra due reti differenti.
Agiscono come dei filtri che , dopo aver controllato
tutto il traffico di rete che proviene dall'esterno e
quello che viene generato dall'interno, permettono
soltanto quel traffico che risulta effettivamente
autorizzato.
34
Funzioni di un firewall
Le diverse funzioni di un firewall possono
essere raggruppate in queste categorie:
" Firewall per la Sicurezza (Statefull Packet
Inspection)
" Firewall come Filtro (in ingresso e in
uscita)
" Firewall come Gateway
" Firewall per estensione della propria LAN
(Accesso sicuro e LAN to LAN tramite
Internet)
35
Firewall per il Packet Inspection
Un firewall è in genere in grado di analizzare il
contenuto di ogni pacchetto che passa attraverso
esso. Questo è fondamentale per bloccare il traffico
indesiderato o gli attacchi di hacker Internet senza
complicare eccessivamente le configurazioni.
Tipici esempi di packet Inspection:
• filtrare gli attacchi Internet di tipo "denial of
service" (il firewall riconosce che è in corso un
tentativo di attacco verso una macchina
Interna e lo blocca)
• la possibilità di verificare il sito in cui si sta
navigando e il contenuto dello stesso per
eventualmente bloccare o registrare
comportamenti non consentiti.
36
Firewall per il Packet Inspection
Il packet inspection è fondamentale per la
realizzazione di un firewall di buon livello.
Si parla di Statefull Packet Inspection nel momento
in cui il firewall tiene traccia delle comunicazioni e
quindi prende le decisioni (ammettere o meno una
comunicazione) in base al contesto
37
Firewall come Filtro
Un firewall è in grado di filtrare il traffico in base al
tipo di protocollo, all'indirizzo e alla porta sorgente
e all'indirizzo e alla porta di destinazione.
Una funzione fondamentale e' quella che permette di filtrare il
traffico Web degli utenti di una lan verso Internet in base al
contenuto dei siti web o in base ad altre politiche.
38
Firewall come Gateway
I firewall possono essere usati come gateway verso
Internet.
In questa ottica il firewall viene visto dalla rete
locale come 'router', anche se generalmente sarà
un altro router a realizzare la connessione fisica
verso Internet.
39
Firewall per estensione della propria LAN
Una funzione che si ritrova in molti firewall è la
possibilità di gestire le VPN (Virtual Private
Network).
Una VPN permette di estendere la propria rete
privata (LAN) verso altre reti private utilizzando
come dorsale una rete pubblica.
Questo è possibile perché i dati trasmessi da una
rete privata all'altra vengono automaticamente
crittografati e de-cirttografati dai firewall, rendendo
in questo la trasmissione sicura.
Vantaggi:
" riduzione drastica dei costi per i collegamenti
aziendali
" maggiore sicurezza nella trasmissione dei dati.
40
Firewall per estensione della propria LAN
41
Firewall a filtraggio di pacchetti,e
firewall a livello di circuito
Distinzione dei firewall in base al
funzionamento interno
Firewall a filtraggio di pacchetti
I firewall a filtraggio di pacchetti esaminano le
informazioni contenute nella intestazione del
pacchetto relativa al protocollo IP e le confrontano
con il loro set di regole interno permettendone o
bloccandone il transito.
Vantaggi:
• costo contenuto
• velocità
Punti deboli:
• sensibilità verso determinati tipi di attacco (ad
es. quelli basati sull'IP spoofing).
• connessione diretta tra sorgente e
destinazione (una volta che il firewall lascia
transitare il pacchetto, esso non garantisce
più alcuna difesa contro ogni successivo
attacco).
43
Firewall a livello di circuito
Al contrario i firewall a livello di circuito, molto
più costosi, forniscono un livello di protezione più
elevato poiché esaminano non soltanto
l'intestazione ma anche il contenuto dei pacchetti in
transito.
Questo meccanismo di funzionamento viene anche
detto "stateful packet inspection" proprio perché
l'esame del contenuto del datagramma è diretto a
verificare lo stato della comunicazione in corso e,
quindi, ad assicurare che il sistema di destinazione
abbia effettivamente richiesto la comunicazione
stessa.
In questo modo c'è la garanzia che tutte le
comunicazioni si svolgano soltanto con indirizzi
sorgente effettivamente conosciuti per effetto di
precedenti interazioni.
44
Firewall a livello di applicazione
Un altra tipologia di prodotti è quella dei firewall a
livello di applicazione: si tratta di dispositivi che
"vedono" il traffico passante non come una
sequenza di pacchetti ma come un flusso di dati e
verificano la legittimità delle connessioni
permettendo soltanto il tipo di traffico che risponde
a delle funzionalità specifiche (ad es. l'accesso alla
rete Internet oppure lo scambio dei messaggi di
posta elettronica).
In linea generale questa classe di prodotti è spesso
rappresentata da sistemi con servizi di proxy che
funzionano agendo da tramite tra un client ed un
qualsiasi server esterno.
45
Firewall a livello di applicazione
In pratica il client invia la sua richiesta di
connessione ad una rete esterna al server proxy il
quale, dopo aver verificato l'ammissibilità del
traffico in base alle regole definite, la inoltra al
sistema di destinazione.
Una volta ricevuta la risposta, essa viene reinoltrata
al client che di conseguenza è sempre nascosto e
non instaura mai una connessione diretta con il
sistema esterno.
46
Firewall a livello di applicazione
I vantaggi derivanti da questo differente
meccanismo di funzionamento sono principalmente
costituiti da:
• un migliore controllo sui protocolli applicativi
(vedi http, ftp, smtp, ecc..) dal momento che
il software, se opportunamente configurato, è
in grado anche di riconoscere la presenza di
vulnerabilità specifiche ed evitare di
conseguenza lo sfruttamento di exploit noti da
parte di un aggressore.
• minore suscettibilità agli attacchi basati sulle
tecniche di occultamento dei dati all'interno
del traffico legittimo (cd. tunneling),
47
Firewall a livello di applicazione
• possibilità di produrre log dettagliati ed, in
alcuni casi, dalla capacità di interfacciamento
con altri sistemi (ad esempio gli IDS o sistemi
di scoperta delle intrusioni) con un
conseguente miglioramento dei livelli di
sicurezza complessivi.
Svantaggio:
• introduzione di una inevitabile lentezza nello
smistamento del traffico di rete
48
Configurazione
I firewall non sono dispositivi "autonomi"
Configurazione
I firewall devono essere istruiti nel prendere
decisioni in merito alla ammissibilità del traffico in
transito attraverso delle regole ben precise definite
dall'utente.
La predisposizione di questo set di regole può
richiedere una fase di studio ed implementazione
più o meno lunga e laboriosa a seconda di quali
siano effettivamente le esigenze di difesa.
Il fulcro dell'intero funzionamento di questi
dispositivi sta proprio nella loro corretta
configurazione.
50
L’aggiornamento del software
I firewall che non hanno natura di dispositivi
hardware sono delle vere e proprie applicazioni.
L'unica differenza con le applicazioni tradizionali è
che in questi casi il firewall rappresenta l'ultimo
baluardo di difesa per cui se un aggressore riesce a
superare questa barriera sfruttando una
vulnerabilità specifica del prodotto egli può avere
pieno accesso al sistema protetto e compiere di
conseguenza ogni tipo di attività.
Per evitare che ciò accada è assolutamente
necessario applicare sempre tutte le patch
rilasciate dal produttore del software.
51
Software
Prodotti freeware, shareware o commerciali
Software
In rete esiste un buon numero di prodotti freeware,
shareware o commerciali che rientrano nella fascia di
mercato dei firewall a difesa personale.
Alcuni prodotti:
ZoneAlarm per Windows
9.x,Me,NT4,2000/XP in
versione freeware scaricabile
dall'indirizzo
http://www.zonelabs.com.
53
ZoneAlarm
Questo prodotto combina le funzionalità di un
firewall con quelle di un sistema di controllo delle
applicazioni e presenta una serie di caratteristiche
quali:
• possibilità di scegliere tra tre livelli di
protezione predefiniti (Basso,Medio,Alto);
• flessibilità e facilità di configurazione;
• analisi in tempo reale dei tentativi di
connessione verso l'esterno (l'utente conserva
la possibilità di scegliere se continuare o
bloccare la connessione);
54
Tiny Personal Firewall
Il secondo prodotto è Tiny Personal Firewall per
Windows 9.x,Me,NT4,2000 freeware, liberamente
scaricabile all'indirizzo
http://www.tinysoftware.com.
55
Tiny Personal Firewall
Questo prodotto oltre a fornire le classiche funzioni di
filtraggio dei pacchetti è anche in grado di costruire
dei filtri a livello delle applicazioni e mette a
disposizione una serie di ulteriori funzionalità.
Alcune funzionalità:
# possibilità di definire una lista di indirizzi di
fiducia;
# possibilità di applicare le regole di filtro soltanto
durante un preciso intervallo temporale;
# possibilità di scegliere tra tre livelli predefiniti di
comportamento (blocco di tutto il traffico,
richiesta esplicita di conferma per ciascuna
connessione per la quale non sia presente una
regola di filtraggio oppure nessun tipo di blocco).56
Black Ice Defender
L'ultimo prodotto è Black Ice Defender per
Windows 9.x,NT4,2000 disponibile all'indirizzo
http://www.networkice.com.
57
Black Ice Defender
Si tratta di un prodotto commerciale che unisce le
funzionalità tipiche di un firewall con quelle di un
sistema per la scoperta delle intrusioni (IDS).
Il software analizza in tempo reale tutti i pacchetti
in transito e, grazie ad un database interno
aggiornabile che raccoglie le impronte
caratteristiche delle varie tipologie di attacco, è in
grado di riconoscere svariati tentativi di intrusione e
di bloccarli prima che essi siano portati a
compimento fornendo un immediato riscontro
all'utente e raccogliendo in un file di log le
informazioni relative all'aggressore quali l'indirizzo
IP, l'eventuale nome NETBIOS della macchina
utilizzata ed il suo indirizzo hardware.
58
Black Ice Defender
Altre caratteristiche interessanti sono:
" facilità di configurazione con la possibilità di
scegliere tra quattro tipologie differenti di livelli:
" possibilità di definire gruppi di indirizzi di fiducia;
" produzione di log dettagliati
59
Decalogo
Decalogo
Molti dei problemi che tipicamente si presentano
quando si tratta della sicurezza di un sistema
informatico possono essere evitati attraverso
l'adozione delle seguenti azioni correttive:
1. usare un buon antivirus
2. usare un firewall
3. non aprire allegati di posta elettronica
4. accertarsi sempre della genuinità di qualsiasi
programma prima di eseguirlo e dei documenti
che possono contenere delle macro;
5. applicare sempre le più recenti patch: questo
vale non soltanto per il sistema operativo ma
anche per il software applicativo;
61
Decalogo
6. prestare la massima attenzione al
funzionamento anomalo del sistema operativo;
7. disabilitare Java, JavaScript ed ActiveX o usare
software specifico che funge da filtro per i
contenuti interattivi che vengono normalmente
ricevuti o utilizzando forme di navigazione
anonime tramite proxy server;
8. disabilitare le funzionalità di scripting nei client
di posta elettronica: spesso infatti le maggiori
vulnerabilità che colpiscono i browser, legate
alla presenza di contenuti interattivi, si
presentano anche in questo genere di
software;
62
Decalogo
9. disabilitare le funzionalità di scripting nei client
di posta elettronica: spesso infatti le maggiori
vulnerabilità che colpiscono i browser, legate
alla presenza di contenuti interattivi, si
presentano anche in questo genere di software;
10.fare un backup regolare di tutti i dati sensibili;
11.creare un disco di boot: ciò può aiutare in un
eventuale attività di recovery di un sistema
compromesso.
63