Questo test individua vulnerabilità nei modelli di intelligenza artificiale esposti ad attacchi di evasione, in cui gli autori di minacce manipolano i dati di input in fase di inferenza per indurre in errore i modelli. Gli attacchi di evasione sfruttano la sensibilità del modello a piccole perturbazioni, con importanti ricadute su integrità e sicurezza dei sistemi AI.
Obiettivi del test
- Identificare la suscettibilità dei modelli AI agli attacchi di evasione attraverso la generazione di input avversari.
- Valutare la robustezza dei modelli su esempi avversari in diversi tipi di dati, come testo, immagini e audio.
- Esaminare l’efficacia dei meccanismi di difesa e rilevamento per gli attacchi di evasione.
Metodologia e payload
-
Perturbazione avversaria di immagini: modificare leggermente un’immagine tramite algoritmi come Projected Gradient Descent (PGD), AutoPGD o AutoAttack. Queste variazioni risultano spesso invisibili all’occhio umano.
- Indicazione di vulnerabilità: il modello classifica male l’immagine modificata. Ad esempio, una foto di un “Labrador retriever” diventando “guillotine”.
-
Perturbazione avversaria di testo (TextAttack): usare
TextAttackper introdurre variazioni minime a livello di caratteri o parole, come errori di battitura o sinonimi.- Indicazione di vulnerabilità: il modello cambia radicalmente la classificazione o l’analisi del sentiment a fronte di modifiche minime e semanticamente neutre.
-
Perturbazione avversaria di audio: aggiungere rumore calcolato a un file audio per eludere sistemi di riconoscimento vocale o identificazione del parlante.
- Indicazione di vulnerabilità: trascrizione errata, identificazione incorretta del parlante o mancato riconoscimento del comando audio.
-
Malware Windows avversario (Adversarial EXEmples): alterare la struttura o il comportamento di programmi malevoli Windows mantenendone la funzionalità originaria.
- Indicazione di vulnerabilità: l’antivirus AI non rileva più il programma avversario come dannoso.
-
SQLi avversario: modificare la sintassi di query SQL injection preservandone la funzionalità.
- Indicazione di vulnerabilità: il Web Application Firewall AI non riconosce più il payload malevolo.
Output atteso
- Classificazione robusta: il modello identifica correttamente gli input, anche se soggetti a perturbazioni avversarie. La previsione non varia tra input originale e alterato.
- Confidenza elevata su input originale, bassa su avversario: un modello robusto mostra un calo marcato di confidenza su un esempio avversario, anche se non sbaglia la classificazione. Questo calo può essere un segnale di rilevazione.
- Rilevamento di input avversari: il sistema ideale implementa meccanismi in grado di segnalare automaticamente gli input sospetti.
Azioni di remediation
- Adversarial training: aumentare il dataset di addestramento con esempi avversari permette al modello di apprendere maggiore robustezza contro queste perturbazioni.
- Defensive distillation: addestrare un secondo modello “distillato” sulle probabilità generate dal modello iniziale per ottenere una decision surface più stabile e resistente ai piccoli cambiamenti di input.
- Sanificazione e trasformazione dell’input: applicare trasformazioni, come ridimensionamento, ritaglio e offuscamento lieve per immagini, oppure rimozione di caratteri speciali e correzione di errori per testi. Tali trasformazioni possono compromettere l’efficacia delle perturbazioni avversarie.
- Meccanismi di rilevazione in tempo reale: utilizzare modelli dedicati per distinguere input puliti da quelli avversari e inoltrare quelli sospetti per revisione manuale o rifiutarli.
Strumenti suggeriti
-
Adversarial Robustness Toolbox (ART)
: libreria Python per generare esempi avversari, valutare la robustezza e implementare difese. -
Foolbox
: libreria Python per attacchi avversari su più modelli. -
SecML-Torch
: libreria Python per valutazioni di robustezza di modelli deep learning. -
Maltorch
: libreria per la valutazione di modelli robusti ai malware Windows. -
WAF-A-MoLE
: libreria per testare la robustezza dei Web Application Firewall basati su AI. -
TextAttack
: framework Python focalizzato sugli attacchi avversari, data augmentation e training robusto in NLP.
Riferimenti
-
Madry, Aleksander, et al. “Towards Deep Learning Models Resistant to Adversarial Attacks.” ICLR 2018.
Link -
OWASP AI Exchange
Link -
Adversarial Machine Learning: A Taxonomy and Terminology of Attacks and Mitigations, NIST AI 100-2e2025, NIST Trustworthy and Responsible AI, March 2025, Section 2.2 “Evasion Attacks and Mitigations.”
Link -
Demetrio, L., Coull, S. E., Biggio, B., Lagorio, G., Armando, A., & Roli, F. (2021). Adversarial EXEmples: A survey and experimental evaluation of practical attacks on machine learning for windows malware detection. ACM Transactions on Privacy and Security (TOPS), 24(4), 1-31.
Link
Testare e mitigare gli attacchi di evasione è fondamentale per garantire modelli AI più sicuri e affidabili. L’integrazione di strategie di robustezza, rilevazione e sanificazione degli input aiuta a difendere i sistemi contro manipolazioni mirate in fase di inferenza.
