Firewall 2x
Firewall 2x
Firewall e IDS/IPS
Antonio Lioy
< lioy @ polito.it >
Politecnico di Torino
Dip. Automatica e Informatica
( L1 > L2 )
Progettazione di un firewall
0 20 40 60 80 100 %
sicurezza
funzionalità
100 % 80 60 40 20 0
I TRE PRINCIPI
INDEROGABILI
DEI FIREWALL
I il FW deve
I. d essere l’unico
l’ i
punto di contatto della rete
interna con quella esterna
II. solo il traffico “autorizzato”
può attraversare il FW
III. il FW deve essere un sistema
altamente sicuro esso stesso
D.Cheswick
S.Bellovin
Politiche di autorizzazione
“Tutto
Tutto ciò che non è
espressamente vietato,
è permesso”
minor sicurezza (porte aperte)
più facile da gestire
Considerazioni generali
gli oggetti grossi sono più difficili da verificare
se un processo non è stato attivato, i suoi bachi non
ci riguardano
“grande NON è bello” = configurazione minima
un FW non è una macchina general-purpose
(minimo del sw, no utenti)
ognuno è colpevole finché non si dimostra
innocente
network
t k (IP) packet
k t filt
filter
datalink
physical
rete esterna
rete esterna
GW
rete esterna
GW
rete esterna
GW
DMZ
GW
rete interna
rete
ete este
esterna
a
DMZ
fi
firewall
ll
Passive FTP
firewall
Punti di filtraggio
packet filter
filtro
forwarding outgoing
incoming engine packets
packets filtro
filtro
filtro
Packet filter
storicamente disponibile sui router
effettua controlli sui singoli pacchetti IP
IP header
transport header
rete interna
open (S,tcp,21)
pasv
port(1040)
open (S,tcp,1040)
FTP client
FTP server
Application-level gateway
composto da una serie di proxy che esaminano il
contenuto dei pacchetti a livello applicativo
spesso richiede modifica dell’applicativo client
può opzionalmente effettuare il mascheramento /
rinumerazione degli indirizzi IP interni
nell’ambito dei firewall, normalmente ha anche
funzioni di autenticazione
massima sicurezza!! (es. contro buffer overflow
dell’applicazione target)
Application
Space
FTP proxy
control control
connection connection
kernel
space
data data
connection firewall OS
connection
client FTP server FTP
Circuit-level gateway
è un proxy non “application-aware”
crea un circuito tra client e server a livello trasporto
… ma non ha nessuna comprensione dei dati in
transito
Circuit-level gateway
rompe il modello client/server per la durata della
connessione
server più protetti
isola da tutti gli attacchi che riguardano
l'handshake TCP
isola da tutti gli attacchi che riguardano la
frammentazione dei pacchetti IP
può autenticare i client
ma allora richiede modifiche alle applicazioni
molte limitazioni proprie del packet filter rimangono
SOCKS
è un proxy a livello trasporto (L4), ossia realizza un
circuit-level gateway
inventato dalla MIPS, v4 da NEC, v5 da IETF
aka AFT (Authenticated Firewall Traversal)
i client devono essere modificati:
standard: telnet, ftp, finger, whois
libreria per sviluppare propri client
supporto anche commerciale:
nei browser (es. FX e IE)
nei firewall (es. IBM)
SOCKS RFCs
RFC-1928 “SOCKS protocol V5”
RFC-1929 “Username/password authentication for
SOCKS V5”
RFC-1961 “GSS-API authentication method for
SOCKS V5”
RFC-3089 “A SOCKS-based IPv6/IPv4 gateway
mechanism”
SOCKS: funzionamento
la libreria rimpiazza le funzioni standard per
maneggiare i socket connect(), bind(), accept(),
...
... con funzioni che:
aprono un canale col SOCKS server
inviano version, IP:port, user
il server SOCKS:
controlla la ACL
apre il canale richiesto (col proprio IP) e lo
"congiunge" con quello interno
Reverse proxy
un server HTTP che fa solo da front-end e poi passa
le richieste al vero server
benefici:
obfuscation (non dichiara il vero tipo di server)
load balancer
acceleratore SSL (con back-end non protetto …)
web accelerator (=cache
( cache di contenuti statici)
compressione
spoon feeding (riceve dal server tutta una pagina
creata dinamicamente e la serve poco per volta al
client, scaricando così il server applicativo)
rete rete
firewall firewall
interna interna
DMZ DMZ
reverse reverse
serv1 serv2
proxy proxy
VPN
serv1 serv2
Architetture di firewall:
quale scegliere? (1)
in teoria, più alto il livello a cui il firewall opera:
più alto sarà il consumo di cicli macchina
più alto sarà il livello di protezione che offre
la realtà:
Architetture di firewall:
quale scegliere? (2)
la scelta migliore:
non un singolo prodotto, ma un’architettura di
firewall robusta che supplisca alle carenze e
eventuali vulnerabilità dei singoli dispositivi!!!
per il singolo elemento richiedere se possibile il
supporto ad architetture multiple: meglio poter
scegliere che lasciar scegliere ad un vendor!!
attenzione alle soluzioni che promettono di risolvere
ogni vostro problema: forse si tratta di pubblicità …
net net
card card
d
deny / reject
j t
prerouting postrouting
forward
conntrack conntrack
routing * filter *
mangle mangle
decision mangle
NAT (dst) NAT (src)
(qdisc) (qdisc)
input output
* filter * * filter *
conntrack local conntrack routing
mangle process mangle decision
NAT (dst)
Stealth firewall
firewall privo di un indirizzo di rete, così da non
essere attaccabile direttamente
intercetta i pacchetti fisicamente, mettendo la
propria interfaccia di rete in modo promiscuo
F
W
SIV e LFM
System Integrity Verifier
controlla i file / filesystem di un nodo per rilevarne
cambiamenti
es. rileva modifiche ai registri di Windows o alla
configurazione di cron, cambio privilegi di un utente
es. tripwire
Log File Monitor
controlla i file di log (S.O. e applicazioni)
rileva pattern conosciuti derivanti da attacchi o da
tentativi di attacco
es. swatch
Componenti di un NIDS
sensor
controlla traffico e log individuando pattern sospetti
attiva i security event rilevanti
interagisce con il sistema (ACLs, TCP reset, ... )
director
coordina i sensor
gestisce il security database
IDS message system
consente la comunicazione sicura ed affidabile tra i
componenti dell’IDS
Architettura di un NIDS
IDS
director
(host)
sensor(s)
DMZ
((host))
(net) sensor(s)
sensor
Interoperabilità di IDS/NIDS
necessaria perché attacchi coinvolgono differenti
organizzazioni e/o sono rilevate da diversi strumenti
formato di signature:
nessuno standard, ma molto diffuso il formato di
Snort
formato degli allarmi e protocollo per la loro
trasmissione:
IDMEF + IDXP + IODEF (IETF)
SDEE (Cisco, ISS, SourceFire)
sensor
notification
event
analyzer
alert operator
t
security response
manager
policy
administrator
IDMEF + IDXP
sviluppati da IETF
Intrusion Detection Message Exchange Format
indipendente dal protocollo (IPv4, IPv6)
supporta internationalizzazione e localizzazione
supporta aggregazione e filtraggio dei dati (sul
manager)
Intrusion Detection eXchange Protocol
basato su BEEP (RFC-3080)
scambia profili (di sicurezza end-to-end, di ID)
profilo di sicurezza base è TLS
SDEE
Secure Device Event Exchange
basato sul paradigma webservice:
messaggi in formato XML
scambio messaggi in HTTP o HTTPS
standard (?) chiuso, gestito da ICSAlabs
IODEF
Incident Object Description and Exchange Format
è un soprainsieme di IDMEF
serve per scambiare informazioni tra enti diversi,
tenere statistiche, valutare rischi, ...
IPS
Intrusion Prevention System
per velocizzare ed automatizzare la risposta alle
intrusioni = IDS + firewall dinamico distribuito
non un prodotto ma una tecnologia, con grosso
impatto su tanti elementi del sistema di protezione
pericolo di prendere la decisione sbagliata o di
bloccare traffico innocuo
Honey pot
external DMZ
network web
b server
Decoy DMZ
honey pot
(attacchi esterni)
honey pot
(attacchi interni)