L’imprescindibile ruolo di Adversarial Machine Learning ed eXplainable Artificial Intelligence nella progettazione di sistemi per la rilevazione di attacchi informatici basati su AI.
Il futuro converge sempre più verso un modello basato su collaborazione uomo-macchina, in cui le macchine sono ubique e progettate per svolgere compiti che all’uomo risultano difficili, se non impossibili, pericolosi e/o costosi. Per perseguire questi obiettivi, specie quelli più complessi, le macchine implementano sempre più tecniche di Intelligenza Artificiale (AI).
Tutte le moderne tecnologie di intelligenza artificiale sono basate sul concetto di apprendimento automatico da esempi, meccanismo base dell’apprendimento umano e più in generale di tutte le specie viventi, necessario per l’adattamento a scenari inediti e quindi per la sopravvivenza. A partire da una serie di esempi, un algoritmo di Machine Learning (ML), costruisce un modello statistico in grado di generalizzare tali esempi, attraverso informazioni a più alto livello che li caratterizzano come classe. Il processo di generalizzazione è di fatto una sintesi degli esempi di partenza e può permettere di riconoscere automaticamente nuove istanze di quella stessa classe.
In sicurezza informatica, la classe di interesse è in genere un attacco informatico.
In questo scenario, gli algoritmi di ML devono operare ed apprendere in un ambiente ostile, caratterizzato dalla presenza di un avversario intelligente determinato ad eludere i meccanismi di rilevazione. La stragrande maggioranza degli algoritmi di ML reperibili “a scaffale” non è stata pensata per operare in un tale scenario e può risultare incredibilmente vulnerabile [1] se attaccata.
Gli attacchi possono essere di tre tipologie principali e complementari:
Information gathering: l’avversario acquisisce informazioni (confidenziali) sul sistema obiettivo e i sistemi/utenti ad esso collegati, tipicamente effettuando delle interrogazioni ed interpretandone le risposte;
Evasion: l’avversario modifica le istanze di attacco per sfuggire alla rilevazione (evadere), sfruttando delle debolezze intrinseche nel modello statistico appreso;
Poisoning: l’avversario inserisce degli esempi ad-hoc per inficiare la corretta generalizzazione da parte dell’algoritmo (in sostanza avvelena gli esempi, dall’inglese poison, veleno).
Gli attacchi di “information gathering” sono utili all’avversario per mettere a punto un profilo del sistema obiettivo, e rivelare informazioni di dettaglio sul modello di ML appreso, ad esempio, verificando quando una certa richiesta viene ammessa e quando invece viene bloccata. Tali attacchi possono causare violazioni di confidenzialità delle informazioni usate dal sistema per l’apprendimento [2].
Gli attacchi di “information gathering” sono inoltre fondamentali per lo sviluppo di attacchi evasion e poisoning. Attraverso un meccanismo interrogazione-analisi risposta, è possibile costruire un modello surrogato che riflette in maniera accurata il comportamento del sistema obiettivo. È stato dimostrato come sia possibile costruire “off-line”, ed in maniera automatica, attacchi evasion e poisoning contro un modello surrogato, per poi trasferirli con efficacia verso il sistema obiettivo [3]. Un aspetto chiave è rappresentato dal fatto che lo stesso modello surrogato è costruito attraverso ML e tale algoritmo può essere completamente diverso da quello effettivamente usato dal sistema obiettivo. È dunque possibile costruire, automaticamente e con successo, attacchi evasion/poisoning senza conoscere i dettagli sull’algoritmo ML impiegato dal sistema obiettivo.
Gli attacchi di tipo “evasion” sono comuni a qualsiasi sistema di rilevazione, ma in questo caso essi fanno leva su limiti inerenti:
rappresentatività statistica degli esempi usati per l’addestramento e la verifica delle prestazioni;
capacità discriminante delle informazioni (feature) estratte da ciascun esempio;
capacità di generalizzazione del modello di base utilizzato dall’algoritmo di apprendimento.
Gli attacchi di “poisoning”, d’altro canto, mirano ad incrementare (spesso a dismisura) i suddetti limiti attraverso l’inserimento di esempi “avvelenati” fra quelli usati dall’algoritmo per l’apprendimento. Tali attacchi possono rendere il modello statistico appreso totalmente inutile, anzi dannoso, ad esempio perché causa troppi falsi allarmi.
Per far fronte a queste tipologie di attacco, negli anni recenti è emerso un nuovo campo di ricerca: l’Adversarial Machine Learning, che si occupa appunto dello sviluppo di sistemi ML capaci di fornire buone prestazioni anche in ambiente ostile [4]. Possiamo vedere l’Adversarial ML come un modo più “saggio” di apprendere da esempi e prendere decisioni, che tiene conto di possibili interrogazioni e manipolazioni dati effettuate da un avversario intelligente.
L’obiettivo dei sistemi di Adversarial ML è quello di:
limitare la quantità e la qualità delle informazioni che un avversario può raccogliere in automatico attraverso attacchi information gathering;
creare un apprendimento robusto, capace di far fronte alla presenza di un certo numero di esempi completamente sbagliati da cui “imparare”;
rinunciare a pronunciarsi (e sollevare un allarme) se gli esempi che si trova di fronte sono significativamente diversi (a livello statistico) da quelli da cui ha “imparato”.
Ma c’è un altro aspetto ancora più importante. Sin dalla fase progettuale, il sistema di rilevazione deve tenere conto delle caratteristiche (feature) difficilmente manipolabili di un’istanza attacco (es. caratteristiche la cui manipolazione è controproducente per la riuscita dell’attacco), in maniera da incrementare in maniera significativa il costo di eventuali manipolazioni da parte di un avversario. In questo senso, occorre fare particolare attenzione ai sistemi basati su Deep Learning - ovvero reti neurali complesse - ormai “trending”, in cui il sistema apprende automaticamente le feature dall’insieme di esempi, ma in cui non esiste alcun criterio di sicurezza in tal senso. Dunque, feature apparentemente molto discriminanti (sugli esempi usati per la verifica di prestazioni) potrebbero essere facilmente manipolate da un avversario (in fase operativa) per evadere la rilevazione.
Il punto è che tipicamente queste informazioni non sono disponibili sui dati di addestramento. Diventa dunque fondamentale innescare un processo continuo in grado di:
reperirle attraverso una accurata analisi dell’applicazione specifica;
inglobarle nel modello stesso di base utilizzato dall’algoritmo di apprendimento.
Entrambe le fasi necessitano di un esperto di dominio.
Ed ecco che torniamo al concetto di interazione uomo-macchina. Uomo e macchina possiedono base, conoscenza e capacità complementari, ed è dunque fondamentale instaurare un canale di comunicazione efficace capace di mettere a fattor comune efficacemente tali prerogative e in definitiva raggiungere gli scopi per cui l’interazione è stata pensata.
Se lo sviluppo di Adversarial ML tratta del flusso di informazione che dall’uomo va verso la macchina, spiegabilità e consapevolezza sono termini che si riferiscono in particolare al flusso di informazione che dalla macchina va verso l’uomo.
I
sistemi basati su AI devono fornire le informazioni chiave all’uomo
perché questi capisca, nel modo più
semplice possibile,
perché hanno preso una certa decisione (spiegabilità
- explainability), affinché l’uomo possa contribuire in maniera efficace al processo, ad
esempio, inviando alla macchina informazioni in grado di correggere
eventuali errori di valutazione. Tale spiegabilità è a sua volta
fondamentale per la consapevolezza (awareness)
dell’uomo circa gli eventi elaborati dalla macchina. In sicurezza
informatica, la situational awareness
- consapevolezza dello stato di sicurezza dei sistemi monitorati -
è uno degli obiettivi ultimi, e dunque la spiegabilità dei processi
di elaborazione della componente AI diventa di cruciale importanza.
Ancora una volta i sistemi basati su Deep Learning risultano inadeguati: essi hanno la caratteristica di rendere imperscrutabili le decisioni prese. Esistono lavori di ricerca che cercano di ovviare a questo deficit, ma il problema sta alla radice dell’algoritmo di apprendimento, che rientra fra quelli di tipo black-box “a scatola chiusa.”
Ogni qual volta si parla di AI applicata alla sicurezza informatica, è dunque fondamentale rivolgersi verso sistemi basati su Adversarial ML e XAI (eXplainable AI), progettati sin dal principio per operare in ambiente ostile e rispondere in pieno ai requisito della spiegabilità delle decisioni.
Igino Corona
(co-founder di Pluribus One srl : https://www.pluribus-one.it)
Note:
[1] Biggio, B., Corona, I., Maiorca, D., Nelson, B., Srndic, N., Laskov, P., Giacinto, G., Roli, F.: Evasion attacks against machine learning at test time. In Blockeel, H., ed.: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (ECML PKDD). Volume 8190., Springer-Verlag Berlin Heidelberg, Springer-Verlag Berlin Heidelberg (2013) 387–402
[2] Shokri, R., Stronati, M., Song, C., Shmatikov, V.: Membership inference attacks against machine learning models. In: 2017 IEEE Symposium on Security and Privacy, SP 2017, San Jose, CA, USA, May 22-26, 2017, IEEE Computer Society (2017) 3–18
[3] Demontis, A., Melis, M., Pintor, M., Jagielski, M., Biggio, B., Oprea, A., Nita- Rotaru, C., Roli, F.: Why do adversarial attacks transfer? explaining transferability of evasion and poisoning attacks. In: 28th Usenix Security Symposium. Volume 28th USENIX Security Symposium (USENIX Security 19)., USENIX (08/2019 2019) 321–338
[4] Sicurezza del Machine Learning, Stato della ricerca sulla sicurezza del Machine Learning - https://www.pluribus-one.it/it/ricerca/sec-ml/sec-ml-ricerca
[5] B. Biggio, F. Roli, Wild patterns: Ten years after the rise of adversarial machine learning, Pattern Recognition, Elsevier, vol. 84, 317–331, 2018 - https://www.sciencedirect.com/science/article/abs/pii/S0031320318302565
[5] B. Biggio, M. Mauri, Is Artificial Intelligence Safe? - https://www.pluribus-one.it/it/chi-siamo/blog/81-artificial-intelligence/73-is-ai-safe
[6] C. Baraniuk, Machine mind hack: The new threat that could scupper the AI revolution, New Scientist - https://www.newscientist.com/article/mg24232270-200-machine-mind-hack-the-new-threat-that-could-scupper-the-ai-revolution/
[7] K. Quach, Fool ML once, shame on you. Fool ML twice, shame on... the AI dev?, The Register https://www.theregister.com/2019/02/21/ai_attack_transfer/
[8] F. Roli, M. Mauri, Artificial Intelligence: past, present, and future. Part I - Short history of Artificial Intelligence - https://www.pluribus-one.it/it/chi-siamo/blog/81-artificial-intelligence/75-ai-history
[9] F. Roli, M. Mauri, Artificial Intelligence: past, present and future. Part II - The Good, the Bad and the Ugly - https://www.pluribus-one.it/it/chi-siamo/blog/81-artificial-intelligence/76-good-bad-ugly-in-ai
[10] D. Bass, Artificial Intelligence vs. the Hackers, Bloomberg - https://www.bloomberg.com/news/articles/2019-01-03/artificial-intelligence-vs-the-hackers
[11] L. Hay Newman, AI Can Help Cybersecurity. If It Can Fight Through the Hype, Wired - https://www.wired.com/story/ai-machine-learning-cybersecurity/
[12] T. Simonite, AI Has a Hallucination Problem That's Proving Tough to Fix, Wired - https://www.wired.com/story/ai-has-a-hallucination-problem-thats-proving-tough-to-fix/