410 likes | 633 Views
I FIREWALL. di Cardinali Davide. Vedremo…. Introduzione (cosa sono i firewall, limiti…) Modalità di funzionamento Tipi di Firewall Architettura dei Firewall Piccola Curiosità (semplici test per sicurezza firewall software). C OSA SONO I F IREWALL.
E N D
I FIREWALL diCardinali Davide
Vedremo… • Introduzione (cosa sono i • firewall, limiti…) • Modalità di funzionamento • Tipi di Firewall • Architettura dei Firewall • Piccola Curiosità (semplici test per • sicurezza firewall software)
COSA SONO I FIREWALL • Firewall è un termine inglese dal significato originario • di muro tagliafuoco ed è un componente passivo di • difesa perimetrale che può anche svolgere funzioni di • collegamento tra due o più tronconi di rete.
Firewall Hardware e Software Firewall Hardware : componente passivo che opera una difesa perimetrale della nostra rete locale (LAN). Firewall Software o personal firewall : software che viene installato direttamente sul PC da proteggere. A differenza del firewall hardware, il personal firewall esegue anche un controllo a livello programma(monitorizza l’attività di scambio dati da e verso internet di tutto il software installato nel PC).
Punti di forza • corretto posizionamento nella rete • studio dei servizi che si vogliono fornire • impostazione delle regole pianificate • manutenzione e aggiornamento del firewall • manutenzione e aggiornamento della rete • verifica periodica dell’efficacia del sistema • consapevolezza dei limiti del firewall • Punti di debolezza • mancanza di amministrazione • configurazioni troppo permissive verso “host” insicuri • installazione di applicazioni o estensioni insicure • sovrabbondanza di servizi pubblicamente accessibili • concentrazione di sicurezza in un unico punto ed il dilagare di insicurezza • circostante • suscitare un falso senso di sicurezza per il fatto di “esserci”
I limiti di un firewall • Vi sono due tipologie principali che generano problemi di sicurezza : • configurazioni non corrette • quando attraverso una configurazione, del sistema firewall, apposita si • sarebbero potuti evitare incidenti • (errori umani, errori di valutazione e conseguente impostazione) • problematiche tecniche • quando nonostante sia stata fatta una configurazione ottima sul firewall, è • possibile accedere ad un componente che si riteneva protetto sfruttando • errori di programmazione o vulnerabilità del firewall.
Configurazioni non corrette In generale la configurazione di un firewall non deve essere esclusivamente operativa ma deve essere sicura Rosso = componenti rete non protetti da firewall rispetto attacchi da Internet Rosso tratteggiato = secondo la tipologia del firewall e del traffico permesso nelle configurazioni, possibile che anche macchine difese dal firewall vengano attaccate • Esempi configurazioni non corrette : • permettere traffico dal mail server (insicuro) al web server o alla rete interna (LAN server) • permettere traffico verso eventuali servizi aperti sul firewall • permettere traffico dal web server alla rete interna • permettere traffico da Internet verso la rete interna
Problematiche Tecniche E’ testato che tutti i firewall abbiano avuto, essi stessi, problemi di sicurezza legati alla tecnologia utilizzata : errori di programmazione, errori di gestione delle eccezioni e quanti altri. • Problematiche tecniche legate al firewall possono rientrare nelle seguenti tipologie : • limiti di configurazione e mancanza di flessibilità nell’impostazione delle regole • volute • suscettibilità a specifici attacchi • lentezza negli aggiornamenti • limiti di analisi del traffico (non tutti i firewall arrivano allo stesso livello!) • mancanza di protezione del traffico “legittimo” • reazione automatica a situazioni della rete • accentramento delle difese della rete in un unico strumento
Cosa non può fare un firewall • Esistono problematiche che dovranno essere assegnate ad altri software perché non di competenza del firewall : • Protezione da attacchi interni • Una volta che il “muro” del firewall è stato oltrepassato quest’ultimo non è • più di alcuna utilità. Uguale se l’attacco nasce all’interno della rete, infatti ci • offre una protezione perimetrale e tutto ciò che è interno all’area è escluso • dal filtraggio. • Social Engineering • Usato per indicare coloro che telefonano agli impiegati spacciandosi per • membri della sicurezza così da estorcere preziose informazioni. • Integrità dei dati • Nonostante i moderni firewall controllino costantemente la presenza di • virus nei pacchetti, è impensabile chiedere ai firewall in reti di grandi • dimensioni di controllare tutti i pacchetti alla ricerca di virus. Ancor più • difficilmente possono rilevare presenza cavalli di Troia che aprono una • backdoor nello stesso computer. Soluzione: antivirus in tutte le macchine. • Cattiva Configurazione • Non è in grado di distinguere da solo ciò che va bloccato e ciò che va • accettato. Quindi: qualità firewall = qualità configurazione.
Modalita’ di Funzionamento • Un firewall può operare in due modalità diametralmente opposte : • Tutto ciò che non è specificatamente permesso è negato • Tutto ciò che non è specificatamente negato è permesso
Modalita’ di Funzionamento • Tutto ciò che non è specificatamente permesso è negato • Il firewall blocca tutto il traffico e ciascun • servizio deve essere implementato caso per • caso. • Lo svantaggio : si limita il numero di scelte • disponibili all’utente.
Modalita’ di Funzionamento • Tutto ciò che non è specificatamente negato è permesso • Il firewall inoltra tutto il traffico e ciascun • servizio dannoso deve essere chiuso caso per • caso. • Lo svantaggio : l’amministratore di rete ha • difficoltà sempre maggiore nell’assicurare la • sicurezza man mano che la rete cresce.
Tipologie di Firewall • I firewall si suddividono in tre tipologie: • Packet-Filtering router (1° generazione) • Stateful Inspection (2° generazione) • Gateway a livello di applicazione (o Proxy • Server) (3° generazione)
PacketFiltering Router • Le regole di filtraggio sono basate sulle informazioni contenute in un pacchetto di rete : • indirizzo IP sorgente • indirizzo IP destinazione • numeri di porta applicazioni coinvolte • campo protocollo IP • interfaccia
ICMP (Codici di Errore) • • Se un pacchetto viene scartato, puo’ succedere che il router restituisca • un codice d’errore (ICMP). • – destination unreachable • – destination administratively unreachable • In generale restituire codici errore ICMP e’ dannoso perché sottopone il • router a un ulteriore carico di lavoro, e quindi facilita l’esecuzione di un • DoS. Inoltre consente di conoscere facilmente le regole di filtraggio del • nostro sistema. • •Alcuni host reagiscono in maniera eccessiva agli errori ICMP • •Non restituire il codice di errore ICMP puo’ generare invece traffico inutile sulla rete
Esempio Le regole A e B permettono i collegamenti SMTP in viaggio di ritorno (cioè le e-mail entranti). Le regole C e D permettono i collegamenti SMTP a destinazione esterna (cioè le e-mail uscenti). La regola E è la regola di default che viene applicata se le altre regole non possono essere applicate.
La regola A permette ai pacchetti in partenza dal client SMTP di andare al suo SMTP server (rappresentato dal pacchetto 1) • La regola B permette alle risposte dal suo server SMTP di andare al client SMTP (rappresentato dal pacchetto 2)
Cosa succede per un’e-mail in partenza da noi verso l’esterno? • La regola C permette ai pacchetti in partenza dal nostro client SMTP di andare al server SMTP esterno (pacchetto numero 3) • La regola D permette alle risposte partenti dal server SMTP esterno di andare al nostro client SMTP (pacchetto numero 4)
MESCOLIAMO, ORA, LE CARTE….. • Le regole A e B permettono i collegamenti SMTP in viaggio di ritorno • Le regole C e D permettono i collegamenti SMTP a destinazione esterna • ma B e D permettono tutti i collegamenti dove entrambi gli ends stanno usando dei porti superiori di 1023, e questo non è certamente quello che noi volevamo
Riformulazione regole con porto di fonte come criterio di controllo
Se l’assalitore è più intelligente? Attacco : SUCCESSO!!!!!
Cosa si può fare? Cosa farà ora il pacchetto 7? FALLIRA’!!!!!!!
Vantaggi e Limitazioni • Vantaggi : • è disponibile in molti router. • costo d’acquisto contenuto. • trasparenza. (non lavora a livello applicativo, quindi non ostacola il • normale utilizzo della rete, lavorando in maniera trasparente • all’utente). • velocità. (tecnologia firewall che effettua meno controlli, e per questo • è la più veloce). • Limiti : • regole difficili da configurare. • testing complesso.(fare prove per verificare funzionamento firewall • risulta complicato) • può avere bug (più frequenti nel packet filtering rispetto al proxying).
StatefulPacketFiltering • successivi alla tecnica del filtraggio dei pacchetti (seconda generazione). • quando viene stabilita una connessione, se le regole di filtraggio non la • bloccano, allora le informazioni relative ad essa diventano entry di una • tabella di stato. • successivi pacchetti in ingresso saranno valutati in base all’appartenenza • ad una delle connessioni consentite presenti nella tabella. • quando la connessione è conclusa, la entry nella tabella sarà cancellata, • per evitare che questa si riempia completamente • informazioni riguardanti la connessione che verranno memorizzate : • - identificatore univoco collegamento sessione • - stato connessione (handshaking se siamo in fase iniziale ovvero • dove raccogliamo info e mettiamo in tabella stato, established, • closing) • - informazioni sequenzialità pacchetti • - indirizzi ip host sorgente e destinazione • - interfacce di rete utilizzate • Esempio tabella di stato:
Vantaggi e Limitazioni • Vantaggi : • buon rapporto prestazioni/sicurezza.(tipologia firewall con più alte • performance, perché è quella che effettua meno controlli sulla • connessione;nonostante ciò più affidabile di pfr). • protezione da IP spoofing.(il controllo non si limita al singolo ip o alla • porta, è molto più difficile aggirare il firewall. Per lo spoofing • frammentare il più possibile il pacchetto per aggirare la verifica delle • informazioni dell’header non è efficace, perché variabili in gioco sono • molte di più). • Tutti i vantaggi del packet filtering.(essendone una evoluzione ne • ereditano tutti i fattori positivi). • Limiti : • mancanza servizi aggiuntivi.(non potendo agire a livello di • applicazione non sono disponibili servizi come gestione delle • autenticazioni). • testing complesso.(verificare corretta configurazione firewall non è • facile)
Application-levelGateways • Applica una politica di sicurezza molto più severa di un packet filtering • router. • Viene installato un programma mirato (un servizio proxy) sul gateway, • per ogni applicazione desiderata. • Se l’amministratore di rete non installa il programma proxy per • un’applicazione particolare, il servizio non è supportato e non può essere • inoltrato attraverso il firewall.
Application-levelGateways • VANTAGGI • Controllo completo.(non fa verifiche contenute solo alle informazioni contenute • nell’header del pacchetto, ma usa anche quelle contenute nel body(cioè la • parte applicativa).Il controllo avviene due volte: quando viene inviata la • richiesta e quando si riceve la risposta). • Log dettagliati. (informazioni memorizzate sono molto accurate, oltre a quelle • contenute negli header dei pacchetti potranno essere utilizzate anche quelle di • livello applicativo). • Nessuna connessione diretta. (ogni volta i pacchetti in entrata e uscita vengono • totalmente rigenerati). • Sicurezza anche in caso di crash. (un crash di un packet filter permetterebbe a • qualunque pacchetto di viaggiare indisturbato, mentre un crash del proxy • bloccherebbe completamente la connessione). • Supporto per connessioni multiple.(un firewall di prima o seconda generazione • non capisce se connessioni separate appartengono alla stessa applicazione, un • apllication gateway può farlo). • User-friendly.(regole di filtraggio molto più facili da configurare rispetto a • quelle di un packet filtering router). • Autenticazione. (supportano un’autenticazione rigida dell’utente).
Application-levelGateways • SVANTAGGI • Costo • Difficoltà di amministrazione • Costo di mantenimento maggiori • Poco trasparente. (i computer interni devono essere • configurati per utilizzare il proxy invece di collegarsi • direttamente al server). • Un proxy per ogni applicazione. (per ogni servizio che si • vuole fare passare attraverso il firewall che implementa • questa tecnologia c’è bisogno di un proxy dedicato). • Basse performance. (gestione delle connessioni attraverso • il proxy richiede molto lavoro per la cpu, diversamente dai • firewall delle generazioni precedenti).
Principi fondamentali per progettazione firewall: • La separazione di reti con requisiti e criticità diverse. • La ridondanza delle protezioni • La difesa in profondità • Flessibilità • Semplicità • Controllo Conseguenze: Creazione delle cosidette DMZ (zone demilitarizzate). Firewall con unico componente non soddisfa buona parte dei principi esposti
Architetturadeifirewall • Le architetture sono principalmente tre : • DualHomedHost • Screening HostArchitecture • Screening SubnetArchitecture
BastionHost • Bastion Host = tutti quei Firewall host critici per la sicurezza della rete. • La sua più classica configurazione è quella di primo ed unico punto di • contatto tra privato e pubblico dominio.
DUALHOMEDHOST • Disabilitando la funzione di routing, si separano fisicamente i due segmenti di • rete. • Sul dual-homed host vengono eseguiti applicativi, che vengono definiti store- • and-forward services, come SMTP(gestisce smistamento e-mail tra le due • reti con ausilio di tavole di filtraggio opportunamente configurate).
ScreenedHostArchitecture • Il collegamento a Internet è assicurato dallo screening router che filtra i • pacchetti sia in entrata che in uscita della rete. • La sicurezza è determinata dal software che viene eseguito sul • bastion host. • Se un hacker ottiene un login sulla macchina avrà una vasta • possibilità di attacchi verso la rete interna.
Piccola Curiosita’ • Elenco test per la sicurezza dei firewall: • Leaktest (tipo di test : sostituzione) • In questo test viene rinominata l'applicazione (Leaktest) in una che • ha l'autorizzazione per uscire e quindi per bypassare il firewall. • Attualmente i firewall dispongono di una firma digitale per le • applicazioni, in questo modo si accorgono del tentativo di • aggiramento. Se il firewall viene aggirato dimostra che questo si • limita ad lasciar passare tutte quelle applicazioni che hanno il nome • nella lista di quelle permesse. • TooLeaky(tipo di test : avvio applicazione) • Viene aperta in modo nascosto una finestra di Internet Explorer e se • il browser ha il permesso per accedere a internet trasmette le • informazioni attraverso la porta 80. Se il test ha successo, significa • che il firewall non controlla quale applicazione ha avviato un'altra • con accesso a internet. • FireHole(tipo di test : avvio applicazione e DLL Injection) • In questo test viene usato il browser di default per inviare dati verso • l'esterno. Per fare questo viene installata una DLL nello stesso • spazio di indirizzamento di un processo che ha il permesso per • uscire. Se il test ha successo indica che il firewall non controlla quali • applicazioni chiamano quelle con accesso ad internet ed in più è vulnerabile al DLL Injection.
Altri tipi di test E' bene precisare che questo test non deve essere preso come modello per stabilire quale firewall è migliore ma è utile per avere una visione sulle differenza che esistono tra i firewall in relazione ai leaktest.
Bibliografia • William Stallings, Sicurezza delle reti – Edizione Italiana • Mc Graw Hill - Sicurezza Informatica • Maurizio Cinotti – Internet Security (2006) • www.wikipedia.org • www.sicurezzainformatica.it • www.chrisneel.it/articolo/firewall • www.upyou.it • www.matousec.com (per test sicurezza firewall)