49481  Sicurezza Informatica 1

 

Settore scientifico-disciplinare: ING-INF/05

 

Crediti: 6

 

Obiettivi formativi specifici

Il corso introduce i principi, i metodi e le applicazioni fondamentali della sicurezza informatica.

 

Contenuti essenziali

 

Programma del corso di Sicurezza Informatica 1 (a.a. 2005/2006)

 

·          Introduzione alle Sicurezza Informatica:  i concetti di risorsa, vulnerabilita`, minaccia, contromisura, e rischio; Security goals: confidenzialita`, integrita`, disponibilita`, ...

·          Introduzione alla Crittografia: concetti fondamentali (crittografia, crittoanalisi, schema crittografico generale); monoalphabetic substitution ciphers; polyalphabetic substitution ciphers; one-time pads; transposition ciphers; composite ciphers

·          Crittografia Simmetrica: block e stream ciphers; Feistel cipher structure; DES e 3DES; modes of operation (Electronic Code Book, Cipher-Block Chaining, Stream Ciphers); link vs end-to-end encryption; il problema della distribuzione delle chiavi

·          Crittografia a Chiave Pubblica: introduzione alla crittografia a chiave pubblica; introduzione alla Teoria dei Numeri; l'algoritmo RSA; l'algoritmo di Diffie-Hellman

·          Autenticazione dei messaggi e firma digitale: integrita` dei messaggi e funzioni di autenticazione (message encryption, message authentication code, cryptographic hash functions); firma digitale

·          Public Key Infrastructure (PKI): componenti della PKI; certificati; modelli di trust; revoca e recupero della chiave/certificato

·          Protocolli di autenticazione: nozioni di base; esempi (NSPK, Otway-Rees, Andrew Secure RPC, Denning & Sacco); regole di progettazione; Kerberos (architettura, protocolli, comunicazione inter-realm, limitazioni)

·          Internet Security: architettura di IPSec (Servizi, Security Associations, Tunnel vs Transport Mode); Authentication Header; Encapsulating Security Payload; gestione delle chiavi

·          Web Security: sicurezza sul lato client (cookies and privacy, meccanismi di autenticazione id HTTP); sicurezza sul lato server (input non convalidato, broken authentication e gestione delle sessioni, cross-site scripting, injection flaws, denial of service, ...)

·          Controllo degli Accessi: discretionary vs mandatory access control; Access control matrix model; Role-Based Access Control; modelli di sicurezza (Bell-LaPadula, Harrison-Ruzzo-Ullman, Information-flow, Chinese Wall, Biba, Clark-Wilson); auditing

·          Programmazione Sicura: Buffer overflows; vulnerabilita` associate alla stringa di formattazione; vulnerabilita` associate ai link simbolici; Race conditions

·           

Capacità operative

Alla fine del corso le competenze acquisite metteranno gli studenti in grado di valutare le problematiche di sicurezza di un’applicazione informatica e sapranno identificare le tecniche di sicurezza piu` adeguate per raggiungere i requisiti di sicurezza richiesti.

 

Tipologia delle attività didattiche e loro articolazione

Numero totale di lezioni: 38 ore di lezione frontale e 24 ore di esercitazione assistita al calcolatore

 

Tipologia e modalità d'esame

Prova orale su argomenti teorici ed applicativi.

 

Propedeuticità:

Fondamenti di Informatica 1, Reti di Calcolatori 1

 

Riferimenti bibliografici:

 

·         Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone: Handbook of Applied Cryptography, CRC Press, 1996 (disponibile online: http://www.cacr.math.uwaterloo.ca/hac/).

·         Dieter Gollmann: Computer security, Wiley, 2000.

·         Williamo Stallings.  Cryptography and Network Security (Principles and Practice).  Fourth Edition. Pearson, 2006.

·         Matt Bishop: Computer Security, Pearson, 2003.