SECURITY 2

Anno accademico 2018/2019 Programmi anni precedenti
Titolo corso in inglese SECURITY 2
Codice insegnamento CM0475 (AF:274861 AR:159102)
Modalità Blend/modalità mista
Crediti formativi universitari 6 su 12 di SECURITY
Livello laurea Laurea magistrale (DM270)
Settore scientifico disciplinare INF/01
Periodo II Semestre
Anno corso 1
Sede VENEZIA
Inquadramento dell'insegnamento nel percorso del corso di studio
Fornire i concetti di base e le tecniche per lo sviluppo di sistemi e reti sicure. Nella prima parte del corso, ci occuperemo di program exploitation, system, network and web security. Nella seconda parte del corso, la teoria verrà applicata in un laboratorio di hacking etico in cui gli studenti dovranno attaccare le altre squadre e, allo stesso tempo, difendere il proprio sistema. La prima parte è propedeutica alla seconda.
Risultati di apprendimento attesi
- conoscenza dei concetti di base e le tecniche per lo sviluppo di sistemi e reti sicure;
- conoscenza delle principali tecniche di attacco e difesa relative a program exploitation, system, network and web security;
- competenze relative sicurezza di sistemi e reti reali sviluppate all'interno di un laboratorio di hacking etico.
Prerequisiti
Si richiede una conoscenza base di matematica, programmazione (buon livello in C e conoscenza base di scripting, SQL e PHP), architetture degli elaboratori, sistemi operativi e reti di elaboratori.
Contenuti
1. Program exploitation
1.1 Tecniche avanzate di program exploitation e program analysis
1.2 Capture the flag - Tips
1.3 Installazione servizio vulnerabile
1.4 CTF su program exploitation

2. SQL injections
2.1 Tecniche avanzate di attacco lato server
2.2 Sfida su SQL injection
2.3 Installazione servizio vulnerabile
2.4 CTF su SQL injections

3. Web security
3.1 Tecniche di attacco lato client
3.2 Prevenzione attacchi lato client
3.3 Installazione servizio vulnerabile
3.4 CTF su Web security
Testi di riferimento
J. Erickson, Hacking, the art of exploitation, No starch press, 2008.
R. J. Anderson, Security Engineering: A Guide to Building Dependable Distributed Systems, Wiley, 2008.
Modalità di verifica dell'apprendimento
La verifica dell'apprendimento avviene attraverso una prova scritta, alcuni assignment e una competizione di hacking etico. La prova scritta ha lo scopo di accertare le conoscenze acquisite sui diversi argomenti del corso. Gli assignment sono facoltativi e consistono in un problema (challenge) da risolvere. La soluzione degli assignment dà un bonus sul punteggio acquisito allo scritto. La competizione di hacking etico ha lo scopo di mettere in pratica le conoscenze acquisite e di verificare la competenze relative all'attacco e conseguente messa in sicurezza di sistemi informatici.
Metodi didattici
Theoretical lectures and practical laboratory classes;
Audio and Video online resources;
Chat and forum;
Challenges on various topics that give extra score;
Ethical hacking lab.
Lingua di insegnamento
Inglese
Altre informazioni
Questa parte del corso richiede di aver superato la prima parte
Modalità di esame
scritto
Obiettivi Agenda 2030 per lo sviluppo sostenibile

Questo insegnamento tratta argomenti connessi alla macroarea "Città, infrastrutture e capitale sociale" e concorre alla realizzazione dei relativi obiettivi ONU dell'Agenda 2030 per lo Sviluppo Sostenibile

Programma definitivo.
Data ultima modifica programma
10/04/2018