Sicurezza e privatezza

A.A. 2019/2020
Insegnamento per
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Italiano
Obiettivi formativi
Scopo dell'insegnamento è quello di introdurre allo studente le basi concettuali e pratiche della Sicurezza Informatica e della Privacy, ponendo una certa enfasi sugli aspetti più implementativi della disciplina. Il dominio di riferimento sarà rappresentato dai sistmei con particolare enfasi sul sistema Linux e dalle reti.
Al termine del corso lo studente sarà in grado di: valutare le principali vulnerabilità presenti in un sistema dato; sfruttare alcune di queste vulnerabilità per ottenere l'accesso non autorizzato ad informazioni o sistemi; individuare le migliori contromisure da adottare a fronte dei più comuni attacchi, valutare le principali minacce alla privacy derivanti dall'uso di specifiche tecnologie informatiche, progettare un sistema di sicurezza informatica per realtà di piccole dimensioni.

Struttura insegnamento e programma

Linea Milano
Edizione attiva
Responsabile
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore
STUDENTI FREQUENTANTI
Programma
1 Introduction
1.1 Fundamental Concepts
1.2 Access Control Models
1.3 Cryptographic Concepts
1.4 Implementation and Usability Issues


2 Physical Security
2.1 Physical Protections and Attacks
2.2 Locks and Safes
2.3 Authentication Technologies
2.4 Direct Attacks Against Computers
2.5 Special-Purpose Machines
2.6 Physical Intrusion Detection
3 Operating Systems Security
3.1 Operating Systems Concepts
3.2 Process Security
3.3 Memory and Filesystem Security
3.4 Application Program Security
4 Malware
4.1 Insider Attacks
4.2 Computer Viruses
4.3 Malware Attacks
4.4 Privacy-Invasive Software
4.5 Countermeasures
5 Network Security I
5.1 Network Security Concepts
5.2 The Link Layer
5.3 The Network Layer
5.4 The Transport Layer
5.5 Denial-of-Service Attacks
6 Network Security II
6.1 The Application Layer and DNS
6.2 Firewalls
6.3 Tunneling
6.4 Intrusion Detection
6.5 Wireless Networking
7 Web Security
7.1 The World Wide Web
7.2 Attacks on Clients
7.3 Attacks on Servers


8 Cryptography
8.1 Symmetric Cryptography
8.2 Public-Key Cryptography
8.3 Cryptographic Hash Functions
8.4 Digital Signatures
8.5 Details on AES and RSA
9 Security Models and Practice
9.1 Policy, Models, and Trust
9.2 Access Control Models
9.3 Security Standards and Evaluation
9.4 Software Vulnerability Assessment
9.5 Administration and Auditing
9.6 Kerberos
9.7 Secure Storage
Informazioni sul programma
In questo corso saranno affrontati argomenti specifici di sicurezza informatica e nel contempo saranno fornite le conoscenze informatiche (qualora non ancora acquisite)
necessaria per comprendere questi argomenti.

Gli argomenti trattati includono:

o Attacchi informatici comuni compresi virus, worm, cavalli di Troia, password cracker, registratori di tasti, denial of service, spoofing e phishing.

o Tecniche per identificare e correggere le vulnerabilità in host e reti, nonché metodi per rilevare e riparare i sistemi attaccati

o Elementi di crittografia: impronte digitali, firme digitali e protocolli crittografici di base.

o Aspetti umani e sociali della sicurezza informatica, tra cui usabilità, interfacce, copyright, gestione dei diritti digitali, ingegneria sociale e questioni etiche.
Propedeuticità
Programmazione, Sistemi operativi, Reti
Prerequisiti e modalità di esame
Prerequisiti: conoscenza di un linguaggio di programmazione, conoscenza dei meccanismi di base che regolano
un sistema operativo ed una comunicazione di rete.

L'esame prevede una prova pratica che se superata positivamente consentirà l'accesso ad una prova orale.

I voti accumulabili nella parte pratica sono 10. 20 quelli che possono essere acquisiti con la prova orale.
Materiale didattico e bibliografia
Il libro di testo sarà definito all'inizio del corso
STUDENTI NON FREQUENTANTI
Programma
1 Introduction
1.1 Fundamental Concepts
1.2 Access Control Models
1.3 Cryptographic Concepts
1.4 Implementation and Usability Issues


2 Physical Security
2.1 Physical Protections and Attacks
2.2 Locks and Safes
2.3 Authentication Technologies
2.4 Direct Attacks Against Computers
2.5 Special-Purpose Machines
2.6 Physical Intrusion Detection
3 Operating Systems Security
3.1 Operating Systems Concepts
3.2 Process Security
3.3 Memory and Filesystem Security
3.4 Application Program Security
4 Malware
4.1 Insider Attacks
4.2 Computer Viruses
4.3 Malware Attacks
4.4 Privacy-Invasive Software
4.5 Countermeasures
5 Network Security I
5.1 Network Security Concepts
5.2 The Link Layer
5.3 The Network Layer
5.4 The Transport Layer
5.5 Denial-of-Service Attacks
6 Network Security II
6.1 The Application Layer and DNS
6.2 Firewalls
6.3 Tunneling
6.4 Intrusion Detection
6.5 Wireless Networking
7 Web Security
7.1 The World Wide Web
7.2 Attacks on Clients
7.3 Attacks on Servers


8 Cryptography
8.1 Symmetric Cryptography
8.2 Public-Key Cryptography
8.3 Cryptographic Hash Functions
8.4 Digital Signatures
8.5 Details on AES and RSA
9 Security Models and Practice
9.1 Policy, Models, and Trust
9.2 Access Control Models
9.3 Security Standards and Evaluation
9.4 Software Vulnerability Assessment
9.5 Administration and Auditing
9.6 Kerberos
9.7 Secure Storage
Prerequisiti e modalità di esame
Prerequisiti: conoscenza di un linguaggio di programmazione, conoscenza dei meccanismi di base che regolano
un sistema operativo ed una comunicazione di rete.

L'esame prevede una prova pratica che se superata positivamente consentirà l'accesso ad una prova orale.

I voti accumulabili nella parte pratica sono 10. 20 quelli che possono essere acquisiti con la prova orale.
Materiale didattico e bibliografia
Il libro di testo sarà definito all'inizio del corso
Periodo
Secondo semestre
Periodo
Secondo semestre
Modalità di valutazione
Esame
Giudizio di valutazione
voto verbalizzato in trentesimi
Siti didattici
Docente/i
Ricevimento:
su appuntamento e-mail: danilo.bruschi@unimi.it
Stanza 8024 via Celoria 18