Firewall
Transcript
Firewall
13/12/12 Elementi di Sicurezza e Privatezza Lezione 16 Firewall e Intrusion Detection Systems Chiara Braghin [email protected]! Firewall 1 13/12/12 Firewall • Sistema di controllo degli accessi che verifica tutto il traffico in transito w Consente o nega il passaggio del traffico basandosi su una politica di sicurezza w Funzioni: § verifica pacchetti in transito § blocca pacchetti non autorizzati e/o pericolosi § maschera indirizzi interni (classi di indirizzi IP riservate e non instradabili - 192.168) (NAT, Network Address Translation) Firewall: scenario di base • Separa la LAN dal resto della rete w Tutti i pacchetti tra la LAN (rete interna) e il resto della rete (rete esterna) vengono instradati attraverso il firewall Firewall Local network Internet Router 2 13/12/12 Firewall: DMZ (1) • DMZ: De-Militarized Zone • Una o più sottoreti (della rete interna) accessibili con connessioni dall'esterno (e dall’interno) della rete ma filtrati dal firewall w NB: Gli host della DMZ non possono connettersi alla rete interna • Contiene i server che devono essere accessibili dall’esterno e/o dalla rete interna w server e-mail w server DNS w server Web Firewall: DMZ (2) 3 13/12/12 Firewall: politiche di sicurezza (1) • Il firewall applica delle regole per stabilire se far passare o meno i pacchetti w è utile solo quando le regole vengono configurate in modo appropriato • Per tutte le sottoreti protette da un firewall si possono definire diverse politiche di accesso w realizza una separazione in zone aventi diverso grado di sicurezza nell’architettura di rete Firewall: politiche di sicurezza (2) • Serve una specifica ad alto livello della politica di sicurezza w default deny: tutto viene bloccato tranne quello che è autorizzato (politica chiusa) w default allow: tutto viene permesso tranne quello che non è autorizzato (politica aperta) " 4 13/12/12 Tipi di Firewall • Agisce a livello di Rete w Packet filtering w Stateful packet filtering • Agisce a livello di Applicazione w Circuit level w Application proxy " Packet filter (1) • Filtra i pacchetti solo sulla base delle informazioni nell’header del pacchetto TCP w i campi degli header dei pacchetti vengono confrontati con le regole della politica e ammessi o scartati a seconda del risultato del confronto • L’header del pacchetto TCP contiene: w indirizzo sorgente w indirizzo destinazione w porta sorgente w porta destinazione w tipo di protocollo w opzioni di protocollo 5 13/12/12 Packet filter (2) • Non si può tracciare la correlazione tra pacchetti in una trasmissione w Ogni pacchetto viene esaminato singolarmente, indipendentemente dai pacchetti precedenti e da quelli successivi • Non si possono esaminare problemi a livello (OSI) più alto Reminder: Modello ISO/OSI • ISO/OSI (Open System Interconnection) • nasce alla fine degli anni 70 come livello di riferimento per l'interconnessione di sistemi aperti • strutturato in 7 livelli: 3 orientati al contenuto dell'informazione, 4 orientati alla rete 6 13/12/12 Regole di filtraggio (1) • Indirizzi IP usati per chiudere/aprire il traffico da determinati mittenti a determinati destinatari • Numeri di porta usati per bloccare/ permettere servizi noti (porta 80?) • Bloccare un protocollo • Combinazioni dei precedenti" Regole di filtraggio (2) Esempi di regole: • Se un pacchetto arriva sull’interfaccia esterna del firewall ed ha un mittente della rete interna lo si blocca w Verifica di spoofing (falsificazione dell’identità) • Se un pacchetto arriva dall’esterno e fa parte di una connessione ftp non accettarlo w Accettare solo connessioni sicure (SFTP - SSH File Transfer Protocol, o FTPS - FTP over SSL) " 7 13/12/12 Regole di filtraggio (3) Come vengono valutate le regole? • Le regole di filtraggio sono memorizzate in uno specifico ordine • Viene utilizzata la prima regola incontrata con la quale c’è corrispondenza w Se una regola blocca la trasmissione o ricezione del pacchetto, il pacchetto è rifiutato w Se una regola permette la trasmissione o ricezione di un pacchetto, il pacchetto è permesso w Se il pacchetto non soddisfa nessuna regola si applica la regola di default (deny all o allow all) Regole di filtraggio (4) • Di solito vengono definite tramite la seguente tabella (variante standard CISCO): Direzione IP IP sorgente destinazione Flag ACK: se il protocollo è TCP, il suo valore può essere 0, 1 o 0/1; ** per altri protocolli! Protocollo Porta Porta Flag sorgente destinazione ACK Azione In una connessione TCP: n n Server port: < 1024 Client port: tra 1024 e 16383 8 13/12/12 Politica di sicurezza: esempio (1)! • Permettere la connessione tra i client in rete = 199.245.180.0 ed il servizio SMTP (tcp/25) di qualsiasi host esterno • Possibile tabella: Direzione IP IP sorgente destinazione Protocollo Porta Porta Flag sorgente destinazione ACK Azione OUT rete ANY TCP >= 1024 25 ANY permit IN ANY rete TCP 25 1 permit >= 1024 Politica di sicurezza: esempio (2)! • Problemi: w Non c’è modo di garantire che il ritorno del pacchetto di conferma (TCP ACK) venga dalla stessa connessione w Porte nel range [1024, 16383] disponibili per i client per ricevere le risposte, ma: § potrebbe essere la risposta legittima di un server ad una connessione stabilita precedentemente § potrebbe essere traffico illecito • Politica troppo lasca! 9 13/12/12 Stateful (dynamic) packet filtering (1)! • Simile al packet filter ma state-aware • Distingue le nuove connessioni da quelle già aperte w tabelle di stato per le connessioni aperte w ogni pacchetto viene esaminato sia singolarmente che in relazione ai pacchetti precedentemente ricevuti e appartenenti alla stessa sessione • Prestazioni migliori rispetto a packet filter ! Stateful (dynamic) packet filtering (2)! 10 13/12/12 Firewall: architettura • Software su processori general purpose w sistema più economico e flessibile • Software su processori GP (Gigahertz processor) • Hardware dedicato (router) w soluzione più costosa e spesso basata su software proprietario Firewall: limiti • Controlla tutto e solo il traffico che lo attraversa w intrusioni interne non sono individuate • Se le connessioni arrivano attraverso un percorso non controllato, il firewall non serve w utente connesso via modem o wireless • Non controllano file infetti da virus! 11 13/12/12 Intrusion Detection Systems Audit di sicurezza! • Audit = attività atte a misurare la conformità di determinati processi, strutture o procedure a determinate caratteristiche richieste • Usato in due diverse accezioni: w Analisi delle procedure e delle pratiche adottate per valutare le eventuali vulnerabilità w Analisi degli eventi per determinare violazioni alla sicurezza o tentativi di violazioni 12 13/12/12 Aree di intervento! • Sicurezza organizzativa w verifica delle responsabilità w politiche aziendali • Sicurezza logica e fisica w valutazione protezione da accessi non autorizzati w valutazione protezione da eventi di natura umana o ambientale (es., dispositivi antincendio, backup) w valutazione protezione dell’infrastruttura di rete w valutazione protezione di server e client • Sicurezza delle applicazioni w verifica protezione dei sistemi applicativi rispetto alle tipologie di rischio intrinseco e implementativo Analisi dei rischi • Identificazione e valutazione dei rischi che si verifichi un certo evento w Meccanismi per tenere i rischi sotto controllo w Valutazione della probabilità che accada un rishio w Valutazione dell’impatto di ciascun rischio w Determinazione di contromisure w Sviluppo e utilizzo di misure per mitigare gli effetti di un rischio w Determinazione della gravità di un rischio e scelta delle contromisure appropriate 13 13/12/12 Tool per l’analisi automatica! • Riducono la quantità di dati che devono essere analizzati manualmente • Sistemi per la determinazione di intrusioni (Intrusion Detection System IDS) w Acquisizione e analisi svolti in contemporanea e in automatico " Intrusion detection system (IDS) - 1! • Gli IDS sono sistemi di monitoraggio w rilevano attacchi w generano allarmi, non prevengono intrusioni • Fasi di un IDS: 1. Raccolta dati 2. Analisi 3. Risposta 14 13/12/12 Intrusion detection system (IDS) - 2! Idee di base: 1. Chi entra in un sistema abusivamente compie operazioni che un utente normale non fa 2. Gli attacchi spesso sono associati ad una violazione del controllo dell’accesso § buffer overflow § utente esterno ottiene accesso a risorse protette § programma e/o file modificati IDS: requisiti • Deve poter essere eseguito senza la supervisione degli utenti • Non deve essere una scatola nera w il suo comportamento interno dovrebbe essere analizzabile dall’esterno • Deve essere resistente ai guasti • Deve essere resistente ad attacchi • Deve richiedere un basso overhead • Deve essere facilmente adattabile al sistema in osservazione • Deve far fronte a cambiamenti nel comportamento del sistema 15 13/12/12 IDS: classificazione (1)! • Due tecniche di analisi dei dati: w Anomaly detection: segnala eventuali (e significative) deviazioni dal modello normale di comportamento w Misuse detection: segnala l’eventuale comparsa di eventi che rispecchiano schemi predefiniti di attacchi § Richiede una conoscenza a priori dei possibili attacchi IDS: classificazione (2)! • Utilizza dati differenti: w HIDS (Host-based Intrusion Detection System): dati relative all’attivita locale di un singolo computer (log di sistema, accesso a file critici, ecc, …) § visibilità migliore dei comportamenti di una applicazione in esecuzione sulla macchina w NIDS (Network-based Intrusion Detection System): controlla il traffico di rete § un singolo NIDS può proteggere diverse macchine" 16 13/12/12 Anomaly detection! • Basati sulla definizione di profili d’uso che descrivono il normale funzionamento w costruiti manualmente (difficile!) w attraverso tecniche di machine learning e data mining • Anomalie: w deviazioni dai profili w deviazione rispetto dati statistici • Capace di riconoscere nuovi attacchi " Anomaly detection: profili • Definiti in base a determinate caratteristiche (metriche) che vengono monitorate dal sistema w Attività di login e sessione § frequenza login § ultimo login § tentativi di specifica password falliti w Esecuzione di programmi e comandi § frequenza di esecuzione § risorse di CPU e I/O usate w Attività di accesso a file § frequenza di read/write/create/delete § numero record letti/scritti § numero letture/scritture/cancellazioni/creazioni falliti 17 13/12/12 Esempio: sequenze di sys call • Costruisce delle tracce durante la normale esecuzione del programma w Comportamento di esempio (sys calls) § open read write open mmap write fchmod close w Alcune tracce vengono memorizzate (lung = 4) § open read write open! § read write open mmap! § write open mmap write! § open mmap write fchmod! § mmap write fchmod close! w Riporta un’anomalia se la sequenza seguente viene osservata: § open read read open mmap write fchmod close Anomaly detection: problemi! • Scelta delle metriche (cosa misurare) • Scelta dei modelli di base: cosa succede se l’attacco compare solo in variabili che non sono state modellate? • Segnalazione di tipo statistico che va interpretata da un esperto umano w Scelta dei threshold (soglia di allarme) 18 13/12/12 Misuse detection! • Si basa sulla descrizione dei tipi di attacco (caratteristiche invarianti di attacchi noti) w Riconosce solo attacchi per cui esiste una descrizione (signature) • Usa un modello di regole per descrivere gli attacchi • Pro: Genera segnalazioni precise • Contro: Riconosce solo attacchi noti Misuse detection: problemi! • Necessità di gestire un repository degli attacchi • Problemi di aggiornamento (solo gli attacchi conosciuti vengono segnalati) • Problema di generazione delle signature degli attacchi 19 13/12/12 Host-based IDS • HIDS è in grado di monitorare attività a livello di singolo utente • Vantaggi: w Scopre la presenza di rootkit • Svantaggi: w necessario un IDS per ogni macchina w se un attaccante ottiene il controllo della macchina può modificare IDS e l’audit log w solo visione locale di un attacco • Esempi di HIDS: w Tripwire (controlla integrità file) Network-based IDS • Ispezionano traffico di rete • Cerca w violazioni a protocolli w pattern di connessioni inusuali w stringhe di attacco nei payload dei pacchetti • Svantaggi: w non sono in grado di ispezionare traffico crittato w non tutti gli attacchi arrivano dalla rete w memorizzza ed elabora una grande quantità di traffico • Esempi di NIDS w Snort, Bro 20 13/12/12 Falsi positivi e falsi negativi! • Falsi positivi: Allarmi provocati da eventi legittimi w le politiche di sicurezza in realtà non vengono violate w causa interruzioni non necessarie w causa insoddisfazioni negli utenti • Falsi negativi: Allarmi mancati in presenza di eventi illegittimi w le politiche di sicurezza sono violate w intrusione non rilevata w evento illegittimo interpretato come legittimo IDS: problemi • Mancanza di dati “interessanti” w Molti network “normali”, system call data w Pochi dati su attacchi realistici, anomalie • Difficile scegliere il valore soglia w Alcuni attacchi possono rientrare nei limiti di attività normali • Falsi positivi/negativi sono molto costosi 21