NETWORK SECURITY + LABORATORY

Crediti: 
9
Anno accademico di offerta: 
2016/2017
Semestre dell'insegnamento: 
Secondo Semestre
Lingua di insegnamento: 

Inglese

Obiettivi formativi

L'obiettivo del corso è fornire allo studente le conoscenze principali meccanismi e protocolli utilizzati nell'ambito della sicurezza nelle reti; in particolare si vuole fornire una conoscenze di base della crittografia applicata, e approfondire i seguenti argomenti:
- principali algoritmi e protocolli di autenticazione;
- principali protcolli per comunicazioni sicure;
- possibili vunerabilità in rete e principali meccanismi di protezione.

Le capacità di applicare le conoscenze e comprensione elencate risultano essere in particolare:
- analizzare schemi di autenticazione e di protezione dei dati basati su crittografia simmetrica e/o asimmetrica;
- progettare meccanismi di autenticazione e di scambio di dati sicuri;
- configurare e utilizzare protocolli e algoritmi standard per la sicurezza (ad esempio protcolli IPSec e TLS; algoritmi di crittografia AES, DES, 3DES, RSA; firma digitale e certificati digitali X.509 e PGP; etc.);
- utilizzo di strumenti per il monitoraggio di una rete e scansione delle possibili vulnerabilità;
- configurazione di sistemi di protezione dei nodi di una rete (firewall).

Prerequisiti

Conoscenze di base sulle architetture di comunicazione e i protocolli TCP/IP.

Contenuti dell'insegnamento

Basi di crittografia e principali algoritmi crittografici;

Meccanismi di autenticazione e firma digitale;

Protocolli per comunicazioni sicure;

Principali minacce e vulnerabilità dei sistemi in rete e possibili contromisure;

Sistemi per la protezione delle reti;

Attività di laboratorio su crittografia, vulnerabilità in rete e protezione delle reti.

Programma esteso

1) Basi di crittografia e meccanismi di autenticazione
- Basi della crittografia simmetrica (classica) ed esempi di algoritmi (DES, 3DES, AES)
- Basi della crittografia asimmetrica ed esempi di algoritmi (RSA, Diffie-Hellman, DSA); vantaggi e svantaggi
- Funzioni Hash e MAC (MD5, SHA, HMAC)
- Algoritmi di autenticazione basati su crittografia simmetrica o asimmetrica
- Scambio di chiavi tramite Key Distribution Center (KDC)
- Firma digitale, certificati digitali, autorità di certificazione, standard X.509/PKI (Public Key Infrastructure) e PGP (Pretty Good Privacy)

2) Protocolli per la sicurezza
- Protocolli di autenticazione e scambio di chiavi (Kerberos, AAA, RADIUS)
- Protocolli di comunicazione sicura a livello IP (IPSec/AH/ESP) e reti private virtuali (VPN)
- Protocolli di comunicazione sicura a livello di trasporto (SSL/TLS) e applicativo (SSH)

3) Vulnerabilità e protezione delle reti
- Vulnerabilità dei protocolli TCP/IP, tipologie di attacchi e possibili contromisure (sniffing, network e port scanning, spoofing, flooding, buffer overflow, etc.)
- Firewall (packet filtering, ALG, NAT, DMZ) ed esempi di configurazioni rete
- Protocolli per attraversamento di FW e NAT (STUN e TURN)
- Intrusion Detection System (IDS)
- Reti di anonimizzazione

4) Attività di laboratorio
- Certificati digitali X.509, CA, applicazioni (e.g. HTTPS), PGP
- IPSec, TLS
- Protocol analyzer, Network scanning, Vulnerability test
- Firewall (Linux netfilter)

Bibliografia

[1] L. Veltri, "Network Security", lucidi del corso, http://www.tlc.unipr.it/veltri
[2] W. Stallings, "Cryptography and Network Security: Principles and Practice" 5th Edition, Prentice Hall

Metodi didattici

Lezioni in aula (36h), esercitazioni in aula (6h) svolte dal docente con gli studenti, attività di laboratorio (21h).

Modalità verifica apprendimento

I risultati di apprendimento da parte dello studente sono verificati attraverso un esame scritto.
Questo esame può essere superato in due modalità diverse:
1) suddiviso in due prove di verifica in itinere scritte, rispettivamente a metà e a fine del corso; tali prove, se superate, completano l'esame; oppure
2) sostenuto tramite prova scritta durante i regolari appelli di esame.

In entrambi i casi la prova scritta è composta da quesiti a risposta chiusa, quesiti a risposta aperta, e esercizi da risolvere.
Durante il corso verranno mostrati e risolti esempi di esercizi di esame.