650 likes | 921 Views
Firewall. Silvia Landoni 1998s019@educ.disi.unige.it anno 2001/2002. Di cosa parleremo…. Introduzione: limitazione dei firewall FireWall-1: - struttura - semplice configurazione Cenni su iptables Conclusione sui firewall. Introduzione.
E N D
Firewall Silvia Landoni 1998s019@educ.disi.unige.it anno 2001/2002
Di cosa parleremo… • Introduzione: limitazione dei firewall • FireWall-1: - struttura - semplice configurazione • Cenni su iptables • Conclusione sui firewall
Introduzione • Un firewall è un apparecchio, o un insieme di apparati, configurato/i in modo da regolamentare il traffico di ingresso e uscita della rete o delle reti connesse • La parte più difficile nella progettazione di un firewall non è installarlo, ma: • configurarlo • mantenerlo e mantenere sicura la rete nel tempo al variare delle richieste e dei servizi • avere chiari i possibili attacchi a cui potenzialmente è soggetta la rete
Limiti di un firewall • Vi sono due aspetti che generano problemi di sicurezza: • configurazioni non corrette errori “umani”, valutazione errata => impostazione • problematiche tecniche errori nel firewall, programmazione o limiti nel sistema
Configurazioni non corrette (1) • Le più note sono: • configurazioni di default • configurazioni dove può passare ciò che non è stato specificatamente bloccato • configurazioni non sufficientemente restrittive • sistema ospite non sicuro • relazione di fiducia con host non protetti • errori di pianificazione della rete • errori di valutazione dei servizi • carenze di conoscenze avanzate su reti e protocolli
Configurazioni non corrette (2) • Si può anche essere vittime di errori ‘difficilmente’ individuabili: • errori di configurazione su servizi pubblici verso i quali è permesso l’accesso attraverso i firewall • vulnerabilità nei servizi pubblici • installare agenti (es. cgi) insicuri che permettano operazioni non volute • predefinire delle regole ed applicarle indiscriminatamente al firewall
Problematiche tecniche • limiti nella configurazione e mancanza di flessibilità • suscettibilità a specifici attacchi • lentezza negli aggiornamenti • limiti nell’analisi del traffico • mancanza di protezione dal traffico “legittimo” • reazione automatica a situazioni della rete • accentramento delle difese in un unico strumemto
Componenti: Management Console o GUI (Graphical User Interface) Management Server Firewall-1 Firewall Module
Possono essere schierate su: • la stessa macchina • una configurazione client/server flessibile attravero una vasta serie di piattaforme
1. Management Console GUI • Definisce la Security Policy in termini di: • network object (es. hosts, networks, gateways, etc) • security rules
2. Management Server • E’ mantenuto il database di FireWall-1 che include: • definizione dei network object • definizione degli utenti • Security Policy • file di log per ogni firewall enforcement point
3. FireWall-1 Firewall Module • Schierato su: • Internet gateways • Altri punti di accesso alla rete Contiene: • FireWall-1 Inspection Module • FireWall-1 Security Server • FireWall-1 Synchronization feature FirewallModule Inspection Module Security Server Syncronization feature
i) FireWall-1 Inspection Module Implementa: • Security Policy • logs event Cosa fa’: • esamina i pacchetti passanti attravrso locazioni chiave • controlla che soddisfino le regole della SecurityPolicy Utilizza il Check’s Point’s Stateful Inspection Technology
Stateful Inspection (2) • Il pachetto e’ intercettato dal network layer ed e’ allora che Inspect Engine entra in azione. • Che cosa fa: • rivela il pacchetto • ne estrae le informazioni dello stato per la security decision da tutti gli application layer • mantiene le informazioni in una tabella dinamica dello stato
Inspection Module (1) • opera sotto il livello di network • analizza tutti i pacchetti prima che arrivino al sistema operativo • i pacchetti non sono trattati dai livelli piu’ alti eccetto il caso in cui soddisfinano Security Policy • esamina i dati provenienti da tutti e 7 i livelli e analizza anche le informazioni dello stato di comunicazioni precedenti
Inspection Module (2) Controlla: • indirizzo IP • numero di porta • altre informazioni per stabilire se il pacchetto e’ permesso dalla Security Policy Aggiorna continuamente la tabella dinamica per I controlli alle comunicazioni successive
ii) FireWall-1 Security Server • Implementa: • Authentication • Content Security
Authentication (1) • Fornisce autentificazione per utenti FTP, HTTP, TELNET e RLOGIN Se la Security Policy ne prevede alcuni : • Inspection Module devia le connessioni agli appropriati Security Server • Security Server fa delle richieste di autentificazione • Se ha successo si procede con la destinazione specificata
Authentication (2) • L’amministratore della sicurezza attraverso dei metodi puo’ stabilire: • in che modo l’individuo e’ autentificato • quali server e applicazioni gli sono accessibili • il tempo durante il quale gli e’ garantito l’accesso
Authentication (3) • I metodi di autenticazione sono tre: • User Authentication • Client Authentication • Session Authentication
User Authentication • accessi privilegiati per utenti base • Es. dell’impiegato in trasferta • vengono implementate nuove regole che permettono l’accesso all’utente ma non all’intero host • autenticazione trasparente • non c’e` una connessione esplicita con il firewall ma una connessione diretta con il server obbiettivo
Client Authentication • permette l’accesso ad uno specifico indirizzo IP • e’ l’utente che si autentica attraverso una “authentication challenge” ma e’ alla macchina client che e’ concesso l’accesso • se l’autenticazione e’ trasparente o meno dipende dalle regole che vengono scelte
Session Authentication • utilizzato per un’autenticazione trasparente per session-basis • l’utente cerca di connettersi ad un server protetto dal firewall • FireWall-1 apre una connessione con un Session Authentication Agent • l’ Agent sfida l’utente per l‘autenticazione prima che FireWall-1 continui con la richiesta al server • SAA e’ installato su appositi client di autenticazione o su altre macchine della rete
Content Security (1) • Implementa: • antivirus checking per il trasferimento di file • accesso controllato per specifiche risorse di rete • comandi SMTP E’ definita usando Resource object ed e’ implementata dal Security Server Le Resours object sono entita` accessibili da protocolli specifici.
Content Security (2) Le definizioni di Resource sono basate sui protocolli HTTP,FTP e SMTP Quando una connessione eguaglia una regola con una Resource l’Inspection Module devia la connessione ad un appropriato Securiry Server
iii) Syncronization feature Alta disponibilità Es. gateway non disponibile: Se ad un certo punto un gateway diventa non disponibile tutte le connessioni continuano senza che sia necessario notificarlo agli utenti. Il gateway in realtà sarà stato cambiato ma gli utenti non dovuto riconnettersi o riautenticarsi.
Malicious Activity Detection • individua eventi malvagi o sospetti e li notifica all’amministratore della sicurezza => analizzando i log records • fornisce un segnale di allarme centralizzato per: - potenziali attacchi su più enforcement points - effettiva intrusione network-based nel sistema • può essere modificato a seconda delle occorrenze (es. individuazione solo di alcuni attacchi o disattivato)
Network Address Translation Serve per fornire un accesso completo ad Internet agli host interni con indirizzi IP invalidi o privati. La traduzione automatica che nasconde direttamente tutti gli indirizzi interni dietro un singolo indirizzo IP.
Security Policy L’amministartore può manovrare gli elementi della security policy all’interno del Policy Editor
Definizione di una Security Policy La definizione della Security Policy in FireWall-1 è definita in termini di: • Rule Base • Network Object • Properties
Rule Base • Insieme ordinato di regole per mezzo delle quali ogni comunicazione è controllata. • Ogni regola specifica: • la sorgente • il destinatario • il servizio • le azioni che devono essere fatte per ogni comunicazione • in che modo è inseguita (track)
Properties • Specifica i varia aspetti di controllo di una comunicazione (es. durata di una sessione di autenticazione) • Le proprietà sono applicate a tutte le regole così che non è necessario specificare particolari ripetitivi nella Security Policy
Network object Il Rule Base Editor permette all’amministratore della sicurezza di definire risorse di rete in termini di semplici oggetti e loro proprietà. Sono facilmente aggiornabili e hanno un insieme di attributi
Requisiti • Per prima cosa bisogna decidere quali proprietà deve avere la nostra rete. • Es. • Nella nostra rete aziendale gli impiegati richiedono un acceso completo alla rete ma noi vogliamo mantenerla sicura ed è necessario che i clienti fuori dalla rete possano mandare mail all’interno. • Bisognerà definire delle Policy Security: • gli utenti esterni possono accedere alla rete locale solo mandando mail ai computer locali • gli utenti interni hanno accesso all’intera rete Non si fanno restrizioni alla rete interna perché si suppone che sia sicura
Implementare la Security Policy (1) Bisogna fare 4 operazioni: 1) definire i network object: gateway,mailserver,localnetwork
Implementare la Security Policy (2) • 2) definire i servizi usati nella Security Policy (ce ne sono 150 predefiniti) • 3) definire Rule Base sui pacchetti: • accepting • regjecting • logging Le regole possono essere espresse in questo modo… I regola : gli utenti esterni possono mandare mail solo al mail server II regola : gli utenti interni possono accedere all’intera rete
Implementare la Security Policy (3) • FireWall-1 lascia cadere tutte le comunicazioni che non sono state esplicitamente permesse dalla Security Policy (esistenza di una regola implicita) • le regole sono scritte in sequenza e la prima regola confrontabile (match) con la connessione viene applicata Le nostre regole saranno mostrate così dal Policy Editor 4) per installare la Security Policy sarà necessario caricare l’Inspection Code sul gateways usando il Rule Base Editor
Iptables • presente dal kernel Linux di serie 2.4 è incluso firewall iptables • la sua particolarità è di poter manipolare i pacchetti in diversi “punti” della nostra macchina. Sono infatti presenti tre tabelle: • FILTER i pacchetti sono solo filtrati • NAT solo il primo pacchetto della comunicazione attraversa la tabella, gli altri seguiranno la sua sorte • MANGLE si usa per operare delle manipolazioni anche sofisticate
Tabella Filter • Composta da tre catene predefinite: • INPUTcontrolla i pacchetti che sono diretti all’userspace • OUTPUT controlla i pacchetti che escono dall’userspace • FORWARD controlla i pacchetti che transitano dall’userspace
Tabella Nat • E’ utilizzata per i pacchetti che stanno per creare una nuova connessione (SYN). • Ci sono anche qua tre catene: • PREROUTING regole sui pacchetti che giungono prima della “routing decision” (se il pacchetto è destinato alla macchina stessa o no) • OUTPUT regole che si riferiscono ai pacchetti in uscita generati dalla macchina locale • POSTROUTING regola i pacchetti che stanno per lasciare la macchina
Tabella Mangle • Serve per poter manipolare i pacchetti in entrata ed in uscita. • Possiede due catene: • PREROUTING manipola i pacchetti in entrata prima della decisione del routing • OUTPUT interviene sui pacchetti in uscita prima del routing decision
Regole Vanno definite all’interno di ogni singola catena tramite le quali il firewall decide la sorte del pacchetto Hanno un TARGET che è un’istruzione che stabilisce cosa fare del pacchetto. I principali sono: • ACCEPT lascia passare il pacchetto (default) • DROP scarta il pacchetto senza avvisare chi lo ha mandato • QUEUE accoda il pacchetto verso l’userspace • RETURN fa analizzare il pacchetto dalla catena chiamante (policy) • REJECT rifiuta il pacchetto ma avvisa la macchina che lo ha inviato
Policy (1) • Il filtraggio sotto Linux 2.4 si basa come nelle versioni precedenti sui concetti di: • catene (chain) • obiettivi (target) • tattiche (policy) Ciascuna catena consiste in: • una policy • una o più regole che stabiliscono se il pacchetto è accettato oppure no