Machine learning per la sicurezza dei sistemi e delle reti

A.A. 2025/2026
6
Crediti massimi
42
Ore totali
SSD
INF/01
Lingua
Italiano
Learning objectives
Il corso mira a fornire agli studenti competenze approfondite nell'impiego del machine learning nel contesto della cybersecurity, esplorandone applicazioni, vantaggi, limiti e prospettive future. In particolare, il programma si propone di far comprendere i principi teorici e pratici dell'analisi di malware e di mettere in luce le criticità legate alla dimensione e alla diversità dei dataset, alla generalizzazione dei modelli e al fenomeno del concept drift. Gli studenti approfondiranno inoltre le tecniche di attacco e di difesa nell'ambito dell'adversarial machine learning, studiando scenari reali.
Expected learning outcomes
Al termine del corso , gli studenti saranno in grado di progettare e implementare pipeline di machine learning per l'analisi e la classificazione di malware - gestendo dataset sbilanciati, static e dynamic analysis e affrontando il concept drift - valutare criticamente limiti e potenzialità dei modelli in ambito sicurezza (overfitting, bias, generalizzazione), sviluppare e applicare contromisure contro attacchi adversarial (white-box e black-box) tramite strategie di retraining, ensembling e hardening, integrare tecniche avanzate di autenticazione e sfruttare Large Language Models per attività di reverse engineering e generazione di codice difensivo
Corso singolo

Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.

Course syllabus and organization

Edizione unica

Responsabile
Periodo
Terzo quadrimestre

Programma
Il programma comprende:

- Fondamenti di machine learning e applicazioni alla cybersecurity

- Tipologie di apprendimento: supervisionato, non supervisionato, e semi-supervisionato

- Problemi legati ai dataset: sbilanciamento, dimensione, rumore e concept drift

- Generalizzazione, overfitting, validazione e selezione del modello

- Analisi di malware tramite tecniche ML (statiche e dinamiche)

- Rilevamento di minacce in tempo reale e su dati in streaming

- Adversarial machine learning: attacchi (evasion, poisoning, privacy leakage)

- Adversarial machine learning: tecniche di difesa e robustezza dei modelli

- Casi di studio su biometrici, autenticazione e rilevamento di anomalie

- Progetti pratici e simulazioni di scenari di attacco/difesa

- Discussione critica sui limiti, rischi e prospettive future del ML in cybersecurity
Prerequisiti
- Conoscenze di base di machine learning, inclusi i principali algoritmi supervisionati e non supervisionati, nonché i concetti di overfitting, underfitting e validazione del modello.

- Competenze fondamentali in programmazione, preferibilmente in Python.

- Nozioni introduttive di cybersecurity, come malware, reti, vulnerabilità e modelli di attacco/difesa.

- Familiarità con i concetti statistici di base (distribuzioni, probabilità, media, varianza) utili per la valutazione dei modelli.
Metodi didattici
Il corso prevede una combinazione di:

- Lezioni frontali per l'introduzione e l'approfondimento dei concetti teorici relativi al machine learning e alla cybersecurity.

- Dimostrazioni pratiche, finalizzate all'applicazione delle tecniche apprese su dataset reali o simulati.

- Analisi di casi di studio, con esempi tratti da scenari reali di attacco e difesa nel contesto dell'adversarial machine learning.

L'approccio didattico promuove l'apprendimento attivo, il problem solving e la capacità di lavorare in contesti interdisciplinari.
Materiale di riferimento
- Rosenberg et al. (2020) Adversarial Machine Learning Attacks and Defense Methods in the Cyber Security Domain

-Aryal et al. (2021) A Survey on Adversarial Attacks for Malware Analysis

- Kurakin, Goodfellow & Bengio (2016) Adversarial Machine Learning at Scale

- Siddiqi (2019) Adversarial Security Attacks and Perturbations on Machine Learning and Deep Learning Methods
Modalità di verifica dell’apprendimento e criteri di valutazione
Prova scritta o colloquio orale finale, volto a verificare la comprensione dei concetti teorici trattati durante il corso, incluse le tecniche di machine learning, le sfide legate ai dati, e gli aspetti di adversarial machine learning.

La valutazione finale terrà conto dei seguenti criteri:

- Padronanza dei contenuti teorici

- Capacità di applicare le conoscenze a casi concreti

- Qualità del lavoro svolto nel progetto

- Chiarezza espositiva e autonomia nella discussione
INF/01 - INFORMATICA - CFU: 6
Lezioni: 42 ore
Docente: Lanzi Andrea
Professor(s)