INTERNET SECURITY
Anno accademico 2018/2019 - 3° anno - Curriculum BCrediti: 9
Organizzazione didattica: 225 ore d'impegno totale, 153 di studio individuale, 36 di lezione frontale, 36 di esercitazione
Semestre: 2°
Obiettivi formativi
- Conoscenza e capacità di comprensione (knowledge and understanding). Lo studente acquisisce conoscenza critica dei problemi di sicurezza che affiggono Internet oggigiorno, nonchè degli strumenti esistenti per arginare tali problemi. Ad esempio, il protocollo più diffuso su Internet, SSL/TLS, viene studiato nel dettaglio insieme al suo recente bug heartbleed.
- Capacità di applicare conoscenza e comprensione (applying knowledge and understanding). Lo studente compendia la conoscenza di problemi e strumenti di sicurezza con la loro applicazione pratica alla costruzione di un mini laboratorio di computer portatili. In particolare, tale applicazione richiede la configurazione di macchine interconnesse in modo che i dati scambiati si mantengano sicuri da un attaccante dotato di potenzialità offensive reali.
- Autonomia di giudizio (making judgements). Lo studente diventa un giocatore esperto del “gioco della sicurezza”, ovvero quello di trovare possibili attacchi ad un sistema che dovrebbe essere sicuro, onde poi aggiustare il sistema per proteggerlo dagli attacchi trovati. Questo processo viene poi reiterato fino a quando gli unici attacchi possibili avrebbero costi improponibili.
- Abilità comunicative (communication skills). Lo studente familiarizza col lessico tipico della sicurezza informatica, acquisendo la capacità di utilizzare in maniera disambigua le varie sfaccettature del termine “sicurezza”, ad esempio nella sua diversità dalla “crittografia”. In particolare, si chiarisce che l'aggetivo “sicuro” è definibile a seconda dell'applicazione con una ben precisa proprietà che resista a un ben preciso attaccante.
- Capacità di apprendimento (learning skills). Lo studente acquisisce la mentalità critica e le capacità metodologiche per affrontare e risolvere i nuovi problemi di sicurezza che gli si possano presentare. Viene istruito alla definizione del sistema, dei suoi requisiti di sicurezza nonchè alla configurazione degli strumenti che possano raggiungere i requisiti malgrado l'azione illecita di un preciso attaccante.
Modalità di svolgimento dell'insegnamento
Le lezioni combinano l'utilizzo della lavagna tradizionale e di slide videoproiettate con una forte interazione docente-studenti anche per via della costruzione in aula di un mini laboratorio portatile. Su tale laboratorio si svolveranno delle prove in itinere, lezione per lezione, sotto forma di "mini-challenge" pratico-applicativi. In particolare, lo studente riceve durante una lezione un compito da studiare e preparare a casa per poi riprodurlo in classe la lezione successiva sul mini laboratorio portatile. Consultare l'orario ufficiale sul sito del CdL in Informatica Triennale.
Prerequisiti richiesti
Buone capacità logico-deduttive. Elementi di sistemi operativi e reti di calcolatori.
Frequenza lezioni
La frequenza è fortemente consigliata anche per via delle prove in itinere che si svolgono lezione per lezione sotto forma di "mini-challenge" da operare sul mini laboratorio portatile costruito in aula.
Contenuti del corso
Lezioni frontali:
Esempi reali e falsi miti di sicurezza
Proprietà, attacchi e attaccanti
Cenni di crittografia
Protocolli di sicurezza classici
Autenticazione
Politiche di sicurezza e privatezza
Malware
Intrusioni
Protocolli di sicurezza per Internet
Firewall
Costruzione del mini laboratorio:
Networking
Password sniffing
Traffic analysis
Intrusion detection
Malware experimenting
Firewalling
SQL injection
Cross-site scripting
Inoltre, in base al rendimento degli studenti durante il corso, il docente valutera' l'organizzazione di un Capture The Flag del tipo http://ictf.cs.ucsb.edu
Gli eventi recenti sono documentati su http://www.dmi.unict.it/~giamp/ctf/
Testi di riferimento
Posteriormente alle lezioni, il docente fornisce agli studenti le slide utilizzate. Esse possono essere sfruttate come una precisa descrizione del programma dell'insegnamento, ma mai come strumento fondamentale di studio. Vanno pertanto integrate con materiale proveniente dai libri di testo, da articoli scientifici reperibili su Internet e, idealmente, con le note che lo studente può prendere durante le lezioni.
Testi consigliati
- William Stallings: Sicurezza delle reti. Applicazioni e standard
- Bruce Schneier: Sicurezza digitale. Miti da sfatare, strategie da adottare
Programmazione del corso
Argomenti | Riferimenti testi | |
---|---|---|
1 | Esempi di attacchi reali e falsi miti | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
2 | Proprietà, attacchi e attaccanti | William Stallings ''Sicurezza delle reti. Applicazioni e standard'' |
3 | Cenni di crittografia | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
4 | Protocolli di sicurezza classici | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
5 | Tecniche di autenticazione | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
6 | Politiche di sicurezza e privatezza | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
7 | Malware e tecniche di rimozione | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
8 | Intrusioni e tecniche di rilevamento e contenimento | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
9 | Protocolli di sicurezza per Internet | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
10 | Firewall e loro configurazione | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
11 | Laboratorio di networking sicuro | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
12 | Laboratorio di password sniffing e cracking | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
13 | Laboratorio di traffic analysis | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
14 | Laboratorio di intrusion detection | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
15 | Laboratorio di malware containment | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
16 | Laboratorio di SQL injection | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
17 | Laboratorio di cross-site scripting | William Stallings "Sicurezza delle reti. Applicazioni e standard" |
Verifica dell'apprendimento
Modalità di verifica dell'apprendimento
- Prove in itinere facoltative di configurazione pratica di laboratorio con risoluzione di problemi reali.
- Progetto implementativo.
- Colloquio orale
Esempi di domande e/o esercizi frequenti
- Prove in itinere: realizzare un attacco forza bruta sul file delle password.
- Progetto implementativo: implementare un protocollo di sicurezza giocattolo tramite socket cifrate.
- Colloquio orale: descrivere la costruzione del Master Secret in TLS.