Sicurezza delle reti (2016/2017)

Codice insegnamento
4S02798
Docente
Massimo Merro
Coordinatore
Massimo Merro
crediti
6
Settore disciplinare
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Lingua di erogazione
Italiano
Periodo
II sem. dal 1-mar-2017 al 9-giu-2017.
Pagina Web
http://profs.scienze.univr.it/~merro/sicurezzadellereti/lec0*.pdf

Orario lezioni

II sem.
Giorno Ora Tipo Luogo Note
giovedì 14.30 - 17.30 lezione Aula I  
venerdì 11.30 - 13.30 lezione Aula C  

Obiettivi formativi

L'obiettivo del corso è quello di presentare le principali metodologie e tecnologie per garantire la sicurezza delle reti informatiche e dei sistemi informatici distribuiti, in generale. Al termine dell'insegnamento lo studente dovrà dimostrare di essere in grado di conoscere le principali nozioni teoriche e applicative per la progettazione, la realizzazione pratica e l'analisi formale di strumenti e protocolli per la sicurezza delle reti e dei sistemi informatici distribuiti.

Programma

Didattica frontale (44 ore)
-- Introduzione all'Information security
-- Proprietà classiche di sicurezza (Confidentiality, Integrity, Availability, Accountability, Authentication)
-- Obiettivi, rischi, attacchi
-- Crittografia a chiavi simmetriche e asimmetriche
-- Il problema della distribuzione delle chiavi segrete
-- Integrità dei messaggi e autenticazione dei messaggi
-- Certificati e modelli di trust
-- Infrastrutture a chiavi pubbliche
-- Casi di studio di infrastrutture a chiavi pubbliche (X.509, PGP)
-- Protocolli crittografici classici per lo scambio di chiavi
-- Tassonomia di attacchi per protocolli crittografici classici
-- Tecniche per la progettazione di protocolli crittografici corretti
-- Protocolli per la sicurezza di rete a diversi livelli
-- Casi di studio (Kerberos, Security Socket Layer SSL, Internet Key Exchange IKE, IP Security IPSec)
-- Privacy e anonimità
-- Politiche di anonimato, problemi tecnici, meccanismi implementativi (pseudonimi e proxies)
-- Casi di studio (Mix Networks, Crowds, Onions networks, TOR)
-- Firewalls (packet filter, stateful, application level, circuit level)
-- Intruders e Intrusion Detection Systems.

Laboratorio (12 ore):

--Analisi del traffico di rete:
* Sistemi di filtraggio di pacchetti (firewall) più diffusi. Introduzione a Netcat, Wireshark e tcpdump.
* Scrittura di un port scanner in Python. Accenni al tool nmap.
* Indirizzi fisici e protocollo ARP, tabelle ARP ed attacchi di tipo ARP spoofing. Il concetto di ARP poisoning. Il tool Ettercap. Modalità di rilevazione di attacchi basati sull'ARP spoofing e mitigazione dei rischi.
* Accenni alle modalità di striping di header HTTP. Tool SSLStrip e Bettercap.
* Limiti del livello di rete come strumento di difesa per attacchi al livello applicativo.

-- Rilevamento di anomalie nel traffico di rete:
* Analisi dei log per la rilevazione di attacchi. Accenni alle modalità di configurazione di IPS ed IDS basati sui log.
* Errori di configurazione tipici del livello di rete e conseguenti rischi ai livelli superiori. Le maggiori vulnerabilità delle applicazioni web derivanti dal livello di rete (A5: security misconfiguration, A6: sensitive data exposure, A9 Using known vulnerable components), furto di credenziali di autenticazione, token di sessione ed informazioni sensibili in genere). Esempi di ARP poisoning.
* l firewall Linux Netfilter: funzionalità e modalità di funzionamento, tabelle, catene, regole, target e policy di default. Accenni al QoS e suo utilizzo per connessioni che richiedono particolari garanzie di latenza. Accenni alle modalità di ottimizzazione delle regole di filtraggio per favorirne il funzionamento.
* Le estensioni di Netfilter per il matching dello stato delle connessioni (new, established, related ed invalid), i tipi di indirizzi (unspec, local prohibit, unicast, broadcast), i commenti, i limiti ed il concetto di burst, i filtri a livello di mac address, utilizzo del firewall per mitigare attacchi di tipo ARP spoofing.

-- Verifica delle configurazioni di filtraggio del traffico di rete e IDS:
* Progettazione di un sistema IDS. Esempio di attivazione di IDS per un infrastruttura web. Implementazione di sistema IPS per attacchi di tipo a forza bruta su credenziali ftp e nel caso di scansione delle porte. Scrittura di prototipo di IPS tramite il firewall iptables e la shell Linux. L'IPS OSSEC.
* Caso di studio: attacchi di tipo SYN flood (half-open-attack) e modalità di mitigazione degli impatti: limitazione delle risorse assorbite dall'attacco mediante strumenti di rete.
* Considerazioni sull'efficacia della sicurezza tramite progressive chiusure di rete.
* Comparazione del firewall Netfilter con ASA di CISCO (accenni) e PF (sistemi BSD).
* Esercitazione guidata nell'utilizzo del firewall enterprise pfSense (community edition).
* Le funzioni di affasciamento di connessioni, port forwarding e definizione di regole di filtraggio offerte dal firewall OpenWRT per sistemi embedded.

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
William Stallings Cryptography and Network Security: Principles and Practice (7th Edition) (Edizione 7) Prentice Hall 2016 ISBN-10: 0134444280
William Stallings Network Security Essentials: Applications and Standards (6th Edition) (Edizione 6) Prentice Hall 2016 ISBN-10: 013452733X

Modalità d'esame

La verifica dell'esame avviene tramite:
- una prova orale riguardante gli argomenti affrontati durante le lezioni frontali;
- la presentazione di un progettino su argomento attinente al laboratorio.

Il voto finale deriva dalla media delle valutazioni in trentesimi ottenute nella prova orale e nella discussione del progetto.

Opinione studenti frequentanti - 2015/2016


Statistiche per i requisiti di trasparenza (Attuazione Art. 2 del D.M. 31/10/2007, n. 544)

I dati relativi all'AA 2016/2017 non sono ancora disponibili