COMPUTER SECURITY E LABORATORIO
Modulo LABORATORIO

Anno accademico 2025/2026 - Docente: SERGIO ESPOSITO

Risultati di apprendimento attesi

  1. Conoscenza e capacità di comprensione (knowledge and understanding). Lo studente acquisisce conoscenza critica dei problemi di sicurezza considerati "di frontiera" oggigiorno.
  2. Capacità di applicare conoscenza e comprensione (applying knowledge and understanding). Lo studente acquisisce capacità pratica di costruire un laboratorio virtuale per condurre esperimenti di penetration testing. Diventa altresì capace di condurre elementari sessioni di analisi formale.
  3. 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.
  4. 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” per quanto concerne alcuni argomenti di ricerca, il penetration testing e l'analisi formale.
  5. 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.

Modalità di svolgimento dell'insegnamento

Durante le lezioni verranno videoproiettate delle slide sugli argomenti del corso. Il corso è caratterizzato da una forte interazione docente-studenti anche per via della natura estremamente pratica degli argomenti trattati.

L’insegnamento si svolge attraverso lezioni frontali e attività di laboratorio. Le lezioni introdurranno i concetti teorici, mentre il laboratorio ne permetterà l’applicazione pratica tramite esercitazioni e casi studio.

Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus.

Prerequisiti richiesti

Avere competenze di base di reti di calcolatori, architetture degli elaboratori, sistemi operativi e programmazione web.

Frequenza lezioni

La frequenza alle lezioni è fortemente consigliata per via della natura pratica dell'insegnamento.

Contenuti del corso

Il Laboratorio di Computer Security è progettato per fornire agli studenti competenze pratiche nell'analisi delle vulnerabilità e nell'uso di strumenti avanzati per la sicurezza informatica. Il modulo inizia con l'esplorazione dei database di vulnerabilità e debolezze, come CVE (Common Vulnerabilities and Exposures), NVD (National Vulnerability Database), MSB (Microsoft Security Bulletins) e CWE (Common Weakness Enumeration), che offrono informazioni sulle vulnerabilità note e le debolezze comuni nei sistemi informatici.

Successivamente, il laboratorio introduce l'uso di Metasploit Framework, una delle piattaforme più utilizzate per il penetration testing. Gli studenti creano il loro laboratorio virtuale di test, impiegando e configurando macchine virtuali vulnerabili al fine di imparare a gestire le basi di Metasploit, ad esempio per eseguire exploit, payload e attacchi contro tali sistemi. Si studiano anche le diverse tipologie di shell utilizzate in questo contesto, con particolare attenzione a Meterpreter, una shell che offre molte funzionalità di controllo remoto e post-exploitation.

Il corso copre inoltre modalità operative specifiche di Meterpreter, come la stageless mode, che consente di eseguire exploit senza passaggi intermedi, e le silent shell, utilizzate per mantenere furtivamente l'accesso ai sistemi compromessi. Viene anche approfondita la migrazione di Meterpreter su altri processi, una tecnica che permette di evitare la rilevazione e di mantenere il controllo su un sistema anche dopo che il processo originale è stato terminato.

Infine, il laboratorio si concentra sulle tecniche di post-exploitation con Metasploit, ossia le attività che è possibile eseguire dopo aver ottenuto l'accesso a un sistema, come il furto di credenziali, la raccolta di dati sensibili, e la privilege escalation.

Testi di riferimento

  • Appunti rilasciati dal docente sul canale Teams dell'insegnamento
  • William Stallings: Sicurezza delle reti. Applicazioni e standard
  • Bruce Schneier: Sicurezza digitale. Miti da sfatare, strategie da adottare

Programmazione del corso

 ArgomentiRiferimenti testi
1Database di vulnerabilità e debolezzeMateriale didattico fornito dal docente
2Introduzione all'hacking eticoMateriale didattico fornito dal docente
3Utilizzo base di MetasploitMateriale didattico fornito dal docente
4MeterpreterMateriale didattico fornito dal docente
5Staged e Stageless payloadsMateriale didattico fornito dal docente
6MSFVenomMateriale didattico fornito dal docente
7Utilizzo degli EncodersMateriale didattico fornito dal docente
8Exploit e Module RankingMateriale didattico fornito dal docente
9MSF DatabaseMateriale didattico fornito dal docente
10Migrazione di MeterpreterMateriale didattico fornito dal docente
11Gestione dei TimeoutMateriale didattico fornito dal docente
12Trasporti multipli in MeterpreterMateriale didattico fornito dal docente
13Shell silentiMateriale didattico fornito dal docente
14Esercitazioni con MSFMateriale didattico fornito dal docente
15Esercitazioni su analisi del rischio GDPRMateriale didattico fornito dal docente

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

  1. Prove in itinere facoltative di configurazione pratica di laboratorio con risoluzione di problemi reali.
  2. Progetto implementativo.
  3. Colloquio orale.

La verifica dell’apprendimento potrà essere effettuata anche per via telematica, qualora le condizioni lo dovessero richiedere.


Il progetto implementativo ha valore integrativo rispetto alla prova orale e concorre alla determinazione del voto finale in modo inscindibile. Esso non rappresenta un’opportunità di incremento del punteggio, ma un completamento necessario per la valutazione complessiva della preparazione dello studente.

Per l'attribuzione del voto si seguiranno di norma i seguenti criteri:

•             non approvato: lo studente non ha acquisito i concetti di base e non è in grado di rispondere alle domande.

•             18-23: lo studente dimostra una padronanza minima dei concetti di base, le sue capacità di esposizione e di collegamento dei contenuti sono modeste, riesce a rispondere a domande semplici.

•             24-27: lo studente dimostra una buona padronanza dei contenuti del corso, le sue capacità di esposizione e di collegamento dei contenuti sono buone, riesce a rispondere alle domande con un buon livello di dettaglio.

•             28-30 e lode: lo studente ha acquisito tutti i contenuti del corso ed è in grado di esporli compiutamente e di collegarli con spirito critico; riesce a rispondere alle domande dimostrando piena padronanza degli argomenti trattati.

Gli studenti con disabilità e/o DSA dovranno contattare con sufficiente anticipo rispetto alla data dell'esame il docente, il referente CInAP del DMI (prof.ssa Daniele) e il CInAP per comunicare che intendono sostenere l'esame fruendo delle opportune misure compensative.

Esempi di domande e/o esercizi frequenti

  • Prove in itinere: sfruttare una vulnerabilità con Metasploit, all'interno di un ambiente di test.
  • Progetto implementativo: scrivere un modulo per Metasploit che sfrutti una CVE nota per cui ancora non esiste un exploit pubblico.
  • Colloquio orale: descrivere come avviene la migrazione di Meterpreter da un processo all'altro, e qual è il vantaggio di eseguire questa operazione.

Si precisa che tali domande hanno carattere puramente indicativo: le domande effettivamente proposte in sede d’esame potranno divergere, anche in modo significativo, da quelle riportate in questa lista.

ENGLISH VERSION