PROGRAMMAZIONE SICURA

Domenico PARENTE PROGRAMMAZIONE SICURA

0522500065
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA MAGISTRALE
INFORMATICA
2014/2015



ANNO ORDINAMENTO 2010
SECONDO SEMESTRE
CFUOREATTIVITÀ
756LEZIONE
216LABORATORIO
Obiettivi
CONOSCENZA E CAPACITÀ DI COMPRENSIONE (KNOWLEDGE AND UNDERSTANDING):

L’OBIETTIVO PER LO STUDENTE SARÀ QUELLO DI CONOSCERE LE TECNICHE E METODOLOGIE PROPRIE DELL'ANALISI STATICA DI SOFTWARE PER ESSERE IN GRADO DI COMPRENDERE IL GRADO DI SICUREZZA OFFERTO DA UN SOFTWARE.

CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE
(APPLYING KNOWLEDGE AND UNDERSTANDING):
IL CORSO HA COME OBIETTIVO ANCHE QUELLO DI INSEGNARE AD UTILIZZARE I PRINCIPALI STRUMENTI/TOOL DI ANALISI DI SOFTWARE ATTUALMENTE UTILIZZATI PER LA GESTIONE DELLA SAFETY E SECURITY DEL SOFTWARE.

AUTONOMIA DI GIUDIZIO: LO STUDENTE ACQUISIRÀ LA CAPACITÀ DI VALUTARE LA SICUREZZA DI UN SOFTWARE BASABDOSI SUGLI STRUMENTI DI ANALISI STATICA MOSTRATIGLI.

ABILITÀ COMUNICATIVE: LO STUDENTE ACQUISIRÀ LA CAPACITÀ DI DESCRIVERE I PROBLEMI DI SICUREZZA DI UN SOFTWARE E DI PROPORRE CON CONFIDENZA POSSIBILI APPROCCI ALLA LORO INDIVIDUAZIONE.

CAPACITÀ DI APPRENDIMENTO: LO STUDENTE SARÀ IN GRADO DI APPRENDERE L'UTILIZZO DEGLI STRUMENTI/TOOL PER L'ANALISI DI SOFTWARE.
Prerequisiti
CONOSCENZA DEL SISTEMA OPERATIVO LINUX E DELLA PROGRAMMAZIONE IN C, JAVA E PHP.
Contenuti
IL CORSO INTRODUCE ALL'ANALISI STATICA DEL CODICE PER RENDERLO SICURO/SAFE OFFRENDO UNA PANORAMICA DEI PRINCIPALI PROBLEMI DI SICUREZZA CHE SI PRESENTANO OGGIGIORNO. I PUNTI PRINCIPALI SONO MOSTRATI IN LINGUAGGIO C E JAVA, USANDO INCIDENTI DI SICUREZZA PRESI DAL MONDO REALE E MOSTRANDO COME GLI ERRORI DI CODICE SONO SFRUTTATI A TALI FINI E COME AVREBBERO POTUTO ESSERE PREVENUTI E COME L'ANALISI STATICA PUÒ RAPIDAMENTE INDIVIDUARLI. IL CORSO NON HA BISOGNO DI PARTICOLARI PRE-REQUISITI ED È DIRETTO A TUTTI QUELLI CHE HANNO A CUORE LA PROGETTAZIONE DI SOFTWARE SICURO. VERRANO MOSTRATI ESEMPI DI VULNERABILITÀ DA FIREFOX, OPENSSH, MYSPACE, ETRADE, APACHE HTTPD E ALTRE TECNICHE PER IL TRATTAMENTO DI INPUT NON AFFIDABILE E COME ELIMINARE IL PROBLEMA DEL BUFFER OVERFLOW. TATTICHE E STRATEGIE PER EVITARE ERRORI SPECIFICI DI WEB APPLICATION, WEB SERVICES E AJAX, LOGGING SICURO, DEBUGGING E TRATTAMENTO DEGLI ERRORI E DELLE ECCEZIONI. CREAZIONE, MANTENIMENTO E CONDIVISIONE DI SEGRETI ED INFORMAZIONI CONFIDENZIALI.
Metodi Didattici
IL CORSO PREVEDE ALCUNE LEZIONI A CARATTERE TEORICO PER IL TRASFERIMENTO DELLE CONOSCENZE NECESSARIE PER LA COMPRENSIONE DEGLI ARGOMENTI TRATTATI E DI UNA SERIE DI LEZIONI DAL CONTENUTO PRATICO IN CUI SI ILLUSTRANO I PRINCIPALI STRUMENTI DI ANALISI STATICA DI SOFTWARE, DANDO SPAZIO AD ESERCITAZIONI INDIVIDUALI E DI GRUPPO.
Verifica dell'apprendimento
UNA PROVA DI LABORATORIO INTEGRATA DA UN COLLOQUIO ORALE O UN PROGETTO INDIVIDUALE DA SVILUPPARE.
Testi
SECURE PROGRAMMING WITH STATIC ANALYSIS,
BRIAN CHESS, JACOB WEST, PEARSON ADDISON WESLEY, ISBN 978-0321424778
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2016-09-30]