network security studente: fiorella colacillo matr. 3069170 corso di sicurezza e privacy a.a....
TRANSCRIPT
NETWORK SECURITYNETWORK SECURITY
Studente: Fiorella Colacillo matr. 3069170
Corso di Sicurezza e Privacy A.A. 2007/2008Docente: Stefano Bistarelli
Corso di Laurea Specialistica in Economia Informatica
Università degli Studi “G. d’Annunzio” Chieti-Pescara
“ This fortress built by Nature for herselfAgainst infection and the hand of war,
This happy breed of men, this little world,This precious stone set in the silver sea,
Which serves in the office of a wall,Or as a moat defensive to a house,
Against the envy of less happier lands; ”
The Tragedy of King Richard the Second
THE DRIBBLE CORPORATION
Multinazionale che commercializza dispositivi
elettronici Politica di sicurezza basata su: Dati sensibili relativi ai piani della compagnia sono segreti Dati riservati forniti dai consumatori (es. carta di credito)
visibili solo da personale fidato Diffondersi dei dati richiede necessariamente il beneplacito
di dirigenti e avvocati
OBIETTIVO: infrastruttura network che appaghi questi requisiti
CLASSI DI DATI PD (Public data): Accessibili a tutti DDEP (Development Data For Existing
Products): Accessibili solo internamente da dirigenti, avvocati e
sviluppatori DDFP (Development Data For Future Products): Accessibili ai soli sviluppatori per sviluppo di nuovi
prodotti CpD (Corporate Data): Include informazioni legali e sulle azioni della società CuD (Customer Data): Dati relativi ai consumatori
THE DRIBBLE CORPORATION
3 ORGANIZZAZIONI INDIPENDENTICSG (Customer Service Group): gruppo assistenza clientiDG (Development Group): gruppo di sviluppoCG (Corporate Group): gestiscono brevetti, obbligazioni e tutto ciò inerente alla società
CG DG
THE DRIBBLE CORPORATIONMinimizzare le minacce, ossia che i dati vengano i possessodi entità non autorizzate Ma chi sono le entità non autorizzate?
CLASSI DI UTENTI OUTSIDERS (Pubblico): Accesso a dati come prodotto, prezzo SVILUPPATORI: Accesso a DDEP e DDFP DIRIGENTI: Accesso in lettura e in scrittura solo a CpD IMPIEGATI: Accesso a dati relativi ai consumatori
Principio della separazione dei privilegi(L'assegnazione dei privilegi deve poter essere effettuata previa verifica di multiple condizioni in modo da poter effettuare una migliore gestione degli stessi.)
Controllo di consistenza
THE DRIBBLE CORPORATION
THE DRIBBLE CORPORATION
Outsiders Developers Corporation executive Employees
PD read read read read
DDEP read read
DDFP read,write read
CpD read,write
CuD write read read,write
ORGANIZZAZIONE NETWORK
Network partizionato e controlli tra le parti per evitare perdita di informazioni
DEF. DMZ è una porzione di Network che separa un network puramente interno da quello esterno
ORGANIZZAZIONE NETWORK
Inner firewall
Outer firewallWeb server
Mail server
DNS server
Log server
Corporate data subnet Customer data subnet
Development subnetInternal DNS server
Internal mail server
DMZ
INTERNAL
Internet
FIREWALLS E PROXIES
DEF. Firewall è un host che interpone l’accesso al network permettendo e impedendo certi tipi di accesso in base alla politica di sicurezza configurata;
DEF. Filtering Firewall effettua il controllo di accesso sulla base degli attributi degli headers dei pacchetti come gli indirizzi sorgente, destinazione e varie opzioni
DEF. Proxy è un agente o un server intermediario che agisce a favore di un punto d’arrivo impedendo una connessione diretta tra due punti di arrivo
DEF. Proxy Firewall utilizza proxies per effettuare il controllo di accesso. Può basare il controllo sul contenuto dei pacchetti,
oltre che sugli headers
ANALISI INFRASTRUTTURA DI RETE
Limitare l’afflusso di informazioni al DMZFirewall e Dmz controllano accessi da e verso Internet
e filtrano il traffico in entrambe le direzioni
Celare gli indirizzi del network interno; in generale sono indirizzi IP e il firewall interno può usare un protocollo come Network Address Translation che mappa questi indirizzi host interni verso l’indirizzo Internet del firewall
Drib principio del privilegio minimo Ogni processo relativo ad un programma dovrà essere
eseguito con solo con i privilegi che gli sono strettamente necessari.
CONFIGURAZIONE FIREWALL ESTERNO
Obiettivo: restringere l’accesso pubblico alla rete interna e bloccare il traffico verso l’esterno (Meccanismo di controllo di accesso)
3 METODI DI ATTACCO PER PENETRARE IL FIREWALL:
1. Entrare attraverso le porte del web server
2. Entrare attraverso le porte SMTP3. Sfruttare vulnerabilità del firewall
Meccanismo di controllo di accessoSiccome nella rete interna ci sono i dati più sensibili della
Drib che gli esterni non possono vedere, il firewall interno dovrà bloccare il traffico ad eccezione delle entrate autorizzate. Le informazioni che entrano verranno dal DMZ e mai direttamente da Internet
Precauzioni assunte dalla Drib per minimizzare le minacce: Disabilitazione della connessione quando non proviene
da una prestabilita Accesso pieno agli amministratori (persone fidate) Utilizzo SSH solo per connettersi ai servers DMZ da
parte degli amministratori
CONFIGURAZIONE FIREWALL INTERNO
DMZ
Nel DMZ risiedono 4 servers: MAIL SERVER WWW SERVER DNS SERVER LOG SERVER
DMZ MAIL SERVER
Obiettivo: gestire le mail, controllo degli indirizzi e del contenuto
3 fasi quando arriva una mail:1. Mail proxy riassembla messaggio in
intestazione/corpo/allegati2. Mail proxy scansiona testo e allegati eliminando eventuali
worm, virus, bombing3. Mail proxy controlla indirizzo destinatario che viene riscritto
dal server mail e poi inoltrato al server interno
La procedura di invio di una mail differisce solo nel passo 3:3. Mail proxy fa la scansione linee intestazione, tutte le linee
che menzionano host interni vengono riscritti per identificare il nome dell’host (es “Drib.org”); poi è inoltrata al firewall per la consegna. (vengono oscurati tutti i dettagli del network della Drib)
DMZ WWW SERVER
Accetta e richiede servizi da internetUtilizzo protocollo SSHDati integri (assicurare che le informazioni non siano
alterabili da persone non autorizzate)
Nella Drib:1. Viene accettato l’ordine dal web dopo la
conferma del consumatore2. Server web fa partire un programma che
controlla il contenuto e lo cifra (con chiave pubblica del sistema interno della sottorete consumatori)
3. Memorizzato in un’area protetta
DMZ DNS SERVER
Contiene ingressi per: DMZ mail, web e log host Host amministrativi interni Firewall esterno Firewall internoDNS non conosce gli indirizzi del server delle mail
interne. E’ il firewall interno che inoltrerà le mail a questo server.
Se mail server conosce l’indirizzo del DNS server può ottenere gli indirizzi dei due firewalls e del server degli amministratori.
DMZ LOG SERVER
Ha una funzione più che altro amministrativa. Questi log possono essere compromessi; chi attacca può cancellare i logs, infatti se i logs sono sulle macchine attaccate, essi li possono intaccare o cancellare
Nella Drib:Quando gli altri server si loggano lasciano un
messaggio che viene mandato al log server che li memorizza. Il log server li scrive anche su una piattaforma per una precauzione nel caso in cui l’attaccante cerca di cancellare i logs
NELLA RETE INTERNA
Può essere organizzata in diversi modi;ogni sottorete ha un firewall e un server proprio
Nella Drib:Dati e utenti distribuiti lungo 3 sottoreti: Il firewall del network degli svilppatori Il firewall del network della società Il firewall della sottorete consumatori
I servers DMZ non comunicheranno mai direttamente con i servers interni
Il firewall instraderà i messaggi nel modo più appropriato
UN COMMENTO GENERALE SULLA SICUREZZA
La politica informale della Drib guida il design dell’architettura del network come la configurazione del software e degli hardware
La configurazione del firewall e del server è basata sulla separazione dei meccanismi.
Se un meccanismo fallisce ce ne sarà un altro che eviterà che l’attaccante sfrutti la falla.
I sw che girano nel firewall è minimizzato e quelli che ci sono fanno solo il necessario
ACCESSIBILITA’ E NETWORK FLOODING
Drib deve garantire l’accessibilità ai suoi utenti
ATTACCHI DI FLOODING: chi attacca cerca di sovraccaricare le risorse di sistema
SYN FLOOD
E’ il più comune attacco di FloodingConsiste nel rifiuto di eseguire il terzo passo del TCP handshake
SYN FLOOD
ACCESSIBILITA’ E NETWORK FLOODING
Succede quando ad es. il pacchetto viene da sorgenti multiple ma hanno uno stesso destinatario(gli indirizzi sorgente di questi pacchetti è settato a qualche host irragiungibile)
Legitimate handshake quando il client riceve il pacchetto del SYN/ACK dal server e risponde con l’ACK appropriato per completare handshake e iniziare la connessione
Attack handshake il client non spedirà mai il pacchetto ACK per completare la connessione (è parte del SYN FLOOD)
GESTIONE DELLA CONNESSIONE TCP
Quando un pacchetto SYN è ricevuto, il server crea un ingresso nella struttura dati
delle connessioni in corso e poi invia il pacchetto SYN/ACK (ricevuta). L’ingresso rimane aperto ad entrambi fin quando non riceve il pacchetto ACK o non incorre in un time-out. Nel caso precedente la connessione è completata, nel secondo è creato un nuovo ingresso per un nuovo pacchetto SYN.
tem
po
Richiesta di connessione
Connessione accordata
ACK
Host client Host server
SYN=1, seq=client_isn
SYN=1, seq=server_isn,
ack=client_isn+1
SYN=0, seq=client_isn+1,
ack=server_isn+1
SYN FLOOD
E’ un attacco che viene compiuto da un utente malevolo che invia diversi pacchetti ma non ritorna il segnale "ACK" al server. Le connessioni sono perciò stabilite solo in parte e utilizzano risorse del server. L'utente che vorrebbe legittimamente connettersi al server, non riesce dal momento che il server rifiuta di aprire una nuova connessione, realizzando così un attacco denial of service.
DoS:letteralmente negazione del servizio. In questo tipo di attacco si cerca di portare il funzionamento di un sistema informatico che fornisce un servizio, ad esempio un sito web, al limite delle prestazioni, lavorando su uno dei parametri d'ingresso, fino a renderlo non più in grado di erogare il servizio.
Sotto un attacco di SYN FLOOD la struttura dati è tenuta piena di entrate, però non stabilirà mai una connessione.
Nuovi SYN creano nuovi ingressi e quelli vecchi verranno eliminati dal time-out
La struttura dati contiene la cronologia della connessione in corso. Quando il client risponde con un pacchetto ACK per completare handshake, il server usa questa informazione per verificare che il pacchetto ACK corrisponda al pacchetto iniziale SYN
Il SYN FLOOD ha successo quando lo spazio allocato tiene questa informazione di cronologia perché lo riempe prima che ogni tree-way handshake siano completati.
I legitimate handshake non possono ottenere spazio nella struttura dati.
LO STATO TCP E ALLOCAZIONI DI MEMORIA
2 TECNICHE per rendere accessibile in una maniera più agevolata lo spazio.
SYN COOKIE Approach nessuno stato necessita di essere tenuto nel sistema server poiché esso può ricavare le informazioni dal pacchetto ACK del client
ADAPTIVE TIME-OUT Approach assume che ci sia un ammontare specifico di spazio per lo stato connessioni in corso. Dopo un ammontare costante di tempo il server cancella le informazioni associate agli attacchi di handshake. (il time-out dipende dallo spazio disponibile)
LO STATO TCP E ALLOCAZIONI DI MEMORIA
HOSTS INTERMEDI
Cerca di ridurre il consumo di risorse usando routers che deviano o eliminano il traffico illegittimo
Osservazione: il SYN FLOOD viene gestito prima che raggiunga il firewall a livello di infrastruttura
Obiettivo: legittimare gli handshake che raggiungono il firewall
ANTICIPARE GLI ATTACCHI
Nonostante le misure adottate, la Drib ritiene che i sistemi potrebbero essere compromessi da mezzi inaspettati.
Ci si può aspettare che gli attacchi arrivino da internet contro il firewall esterno.
DMZ log server ha un meccanismo di rilevamento intrusioni che sonda i log cercando prove di attacco e comportamenti anomali.
Attenzione agli attacchi dentro il DMZ (accesso ristretto)
La filosofia di ignorare gli attacchi che falliscono sembra essere pericolosa perché quando un attaccante ha successo nel compromettere il sistema, l’attaccante avrà probabilmente provato e fallito numerose volte prima.
ANTICIPARE GLI ATTACCHI
CONCLUSIONI
Abbiamo visto come la Drib ha sviluppato un’infrastruttura di rete partendo da una politica di sicurezza.
I server accessibili al pubblico sono sistemi dedicati che provvedono ad un unico servizio
I firewalls sono di livello applicativo così che possono controllare i contenuti di ogni connessione; da un lato limitano il traffico verso il server pubblico e dall’altro blocca il traffico esterno in modo da non far raggiungere il server interno