Machine learning per la sicurezza dei sistemi e delle reti
A.A. 2025/2026
Obiettivi formativi
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.
Risultati apprendimento attesi
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
Periodo: Terzo quadrimestre
Modalità di valutazione: Esame
Giudizio di valutazione: voto verbalizzato in trentesimi
Corso singolo
Questo insegnamento può essere seguito come corso singolo.
Programma e organizzazione didattica
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
- 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.
- 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.
- 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
-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
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
Docente/i