L’adversarial AI (letteralmente, l’intelligenza artificiale “avversaria”) è un insieme di tecniche di attacco utilizzate per alterare il comportamento di un modello di machine learning al fine di favorire in qualche modo un eventuale aggressore di un sistema di intelligenza artificiale.
Per questo motivo, l’adversarial AI è considerato dagli esperti di cyber security come il tallone d’Achille dei sistemi di sicurezza basati su algoritmi di intelligenza artificiale e machine learning.
Indice degli argomenti
Perché parliamo di adversarial AI
In the wild si trovano diversi tipi di intelligenza artificiale (AI), costruiti in modi diversi, finalizzati per differenti scopi e utilizzati per varie motivazioni.
Sempre più di frequente, il sottostante di una procedura informatica è dominato da un AI. Talvolta trattasi di un classificatore che potrebbe avere il ruolo di determinare se un particolare comportamento sia rischioso o meno per l’ambiente circostante, di frequente potremmo trovare un algoritmo sviluppato con tecniche di machine learning che sia stato predisposto per Anomaly-Detection, oppure ci potremmo imbattere in qualcosa di maggiormente sofisticato come un codice genetico dedicato a modificare il layout applicativo di una pagina HTML al fine di rendere complesso il suo crawling o l’applicazione di tecniche di Evasion rispetto a un paywall.
Intelligenza artificiale: le nuove regole europee che disciplinano l’uso della tecnologia
Adversarial AI: caso d’uso e motivazioni
Bene, in un panorama così vasto, costituito di molti oggetti dai nomi e dalle applicazioni più disparate, selezioniamo un modello esemplificativo per fornire una spiegazione razionale, ma anche entusiasmante e che possieda le caratteristiche della narrativa.
Immaginiamo di operare un attacco Black-Box verso la classica AI inserita nella catena della produzione del denaro, ovvero supponiamo di attaccare un’AI dedicata all’analisi dei comportamenti dei visitatori di un sito web commerciale che voglia massimizzare i propri profitti nel futuro. Perché farlo? È solo un caso teorico?
Assumiamo la posture del “competitor” del sito web selezionato. Mors tua, Vita mea. Se il target perderà denaro, sarà molto probabile che una maggiore quantità di monete cadrà nel nostro perimetro. Inoltre, fantasticare è gratis e la spiegazione può illustrare con semplicità l’attacco e le ragioni di cui stiamo trattando.
Non potevamo farla più semplice?
Avremmo potuto semplificare la complessità, forse. Il lettore poco attento potrebbe pensare che un attacco DDoS sarebbe stato più immediato e maggiormente risolutivo, ma se lo avesse fatto prima di leggere questo breve articolo, avrà modo di scusarsi con il proprio intelletto giungendo in fondo.
Un attacco DDoS è immediatamente visibile, è mitigabile in vari modi, è temporaneo, si diagnostica facilmente per chi si difende, solitamente se l’attaccante non ha un Terabit/s di throughput a disposizione è sufficiente posizionarsi su una CDN commerciale qualunque per potersi permettere anche di ignorarlo totalmente.
Un attacco adversarial AI è subdolo, come vedremo tra un attimo, quanto devastante se portato con meticolosità scientifica. Alle armi, dunque, andiamo in battaglia.
Come si prepara un attacco adversarial AI
Sappiamo che il nostro sito competitor è dotato di un algoritmo AI che, utilizzando lo storico delle visite dei clienti, dei loro acquisti, il funnel che porta un gruppo di esseri umani a premiare il webmaster con vile denaro ed altri parametri, imposta un Rec-Sys (ovvero un Reccomendation System) alimentato dal fruscio dei dati generato dai visitatori che passano e dal tintinnio dei denari che costoro trasferiscono al munifico Owner in cambio di merci o servizi reclamizzati sul suo sito web.
Non sappiamo altro, è un attacco BlackBox, non conosciamo l’algoritmo, non sappiamo su quale training-dataset sia stato inizialmente implementato e ignoriamo quali logiche esso segua. Non facciamoci illusioni, nel caso esemplificativo di specie, nella maggior parte delle occasioni, l’algoritmo che sovraintende al Rec-Sys è una regressione logistica menomata figlia di un repository GitHub non mantenuto, ma andiamo avanti e concentriamoci su ciò che realmente conta.
Tuttavia, non stiamo guidando bendati un’auto dai vetri oscurati, possiamo osservare il Rec-Sys del target, dunque mandiamo in avanscoperta “Alice” e “Bob” registrando due account, “Alice the Trainer” e “Bob the Tester”.
In stiva prendiamo un po’ di codice, dotiamoci di un automa semplice che con un headless-browser navighi il sito target e lanciamo Alice in ricognizione.
Navigando il catalogo del target, Alice “surfa” tra le pagine e ad ogni iterazione colleziona le informazioni fornite dal Rec-Sys avversario memorizzando tutte le indicazioni che gli vengono regalate dal bersaglio sottoforma di “altri clienti che hanno visionato il prodotto nella pagina, hanno anche visto questi altri”, ed Alice puntuale e metodica seguirà con pedissequa diligenza le indicazioni fornite.
Dopo qualche milione di imbardate casuali, la nostra Alice avrà collezionato molte informazioni sulla foresta di raccomandazioni che portano il nostro competitor a ricevere denaro.
È il momento di impartire l’ordine di attacco
Adesso che sappiamo “come ragiona” l’AI del target, iniziamo con la deception.
Bob, che ha imparato molto dai viaggi di Alice, esegue una ricognizione random del sito target e scopre che alcuni bellissimi prodotti non vengono mai mostrati dal Rec-Sys e ne deduce che questi non risultino molto appetibili alla clientela, scova un bucket di “bare con luci”, “gatti robot mangia-divani”, ed altre meraviglie per gli occhi che i visitatori del sito competitor non vogliono proprio acquistare.
Con un po’ di Data-Exploration sui dati ricavati da Alice, Bob piega il Rec-Sys del target a fungere da Oracolo. Per farlo, l’esperto Bob utilizza tecniche di Shap-Explanation sui dati ricavati da Alice e capisce immediatamente che il Rec-Sys avversario produce raccomandazioni basandosi sul Flow dei visitatori tra i prodotti, sulle stelline che essi affiggono sui prodotti e sui dati degli acquisti.
Bob ha così individuato quali siano gli Hyper-Parameters che forgiano il senso di ciò che l’AI avversaria suggerisce ai visitatori del sito concorrente.
È giunto il momento di impartire l’ordine di attacco, bramiamo la pecunia dell’avversario e già percepiamo i nostri Stocks che si assottigliano per convertirsi in beni fungibili, gli NFT in questo gioco non ci interessano, li lasciamo agli speculatori ed ai dilettanti del mestiere.
NFT: che cosa sono, come funzionano, come investire sui non fungible token
L’utilizzo dei bot negli attacchi adversarial AI
Con un po’ di Osint Intelligence spiccio, il contrammiraglio Bob intuisce che il sito competitor ha una media di mille visitatori l’ora, i quali lasciano circa 200 valutazioni (stelline) l’ora ed acquistano merci 50 volte l’ora.
Bob si arma di carta e penna e calcola che per deviare il comportamento del Rec-Sys avversario dovrà agire d’astuzia, facendosi coadiuvare da alcuni Bot semplici.
I Bot non dovranno fare altro che aprire pagine a caso sui prodotti maggiormente raccomandati dal sito competitor e virare dritti su quelli invendibili (bare con le luci), avviare un processo d’acquisto ogni tanto su questi mirabolanti beni frutto dell’orrore, concludere alcune transazioni solo per lasciare delle valutazioni, prima di revocare l’ordine di pagamento sulle proprie carte prepagate. Easy, smooth, straight forward.
L’attacco adversarial AI ha avuto successo
Mentre Bob lancia i propri Bot, l’ammiraglio Alice osserva l’azione e prosegue a raccogliere dati sul Rec-Sys avversario.
Anche Alice ha carta e penna ed ha una cifrante per comunicare con Bob. Alice a tavolino esegue la sua Data Exploration sui nuovi dati che raccoglie in rolling-window da 3.600 secondi.
Così facendo, Alice capisce quale sia il Gradient dell’attacco di Bob, ovvero quale sia il rapporto tra le interazioni dello squadrone di Bob ed il comportamento del Rec-Sys avversario.
Queste preziose informazioni vengono retroazionate verso il gruppo di attacco al fine di non creare Minimi Locali troppo evidenti nel comportamento del Rec-Sys del competitor, quanto piuttosto degradarne le prestazioni in un dolce e lento iperbole a derivata negativa.
Fu così che il nostro sito competitor iniziò a raccomandare ai propri visitatori di acquistare bizzarri prodotti che nessuno vorrebbe mai in casa propria e fu così che la deception del Rec-Sys avversario creò un beneficio per le nostre finanze.
Le adversarial AI sono tra noi: ecco come affrontarle
Se il lettore pensasse che si tratti di tecniche troppo complesse, non applicabili real-world e del tutto teoriche, è invitato a riflettere sul fatto che ancora esistono gruppi di individui che tentano di organizzarsi per un 51%-Attack verso le Blockchain delle criptovalute più redditizie del mondo ed a riflettere che con queste tecniche non si può attaccare solo un sito per e-commerce, ma anche un sistema di armamento o un sistema di Intelligence state-sponsored.
Il costo di un attacco deve anche solo sfiorare la parte bassa del beneficio che procura per essere efficiente e redditizio a lungo termine, e questo un’AI lo sa.
L’Adversarial-AI “spiegata semplice” sopra, non è così distante dalle sofisticate Adv-AI che regolano le attuali battaglie cyber in corso, la dissemination di false informazioni nelle campagne elettorali in altri paesi o la costruzione di falsi-positivi nei SoC di altre nazioni al fine di condurre attacchi undercover verso gli stessi.
Le adversarial AI sono tra noi e dobbiamo conoscere il nemico per poterlo affrontare.
Abbiamo teorizzato per anni le regole e le prescrizioni per la raccolta di dati in ambito cyber, abbiamo pontificato i sistemi di Log Analytics per Attack-Probing, ora scopriamo che i dati che stiamo raccogliendo, nelle mani di un AI avversaria possono trasformarsi in una potente arma rivolto contro di noi che li stiamo mietendo e mettendo in cascina.
Nel 2021, nessuna attività di monitoraggio cybersec può prescindere dalla messa in sicurezza del proprio perimetro verso un attacco Adv-AI.
Nelle nostre Risk-Analysis dobbiamo tenere conto del fatto che i nostri dati potrebbero rappresentare una nuova e temibile minaccia, se usati e forgiati da un avversario ostile, consapevole e preparato.
Forse, per fare uno step in avanti, dobbiamo fare qualche passo indietro, ripartire dal “so di non sapere” ed utilizzare maggiore discernimento e meno fiducia verso lo spazio interno al perimetro che difendiamo.
Se fino ad oggi ci siamo concentrati sulla collezione e sul mantenimento di dati che abbiamo sempre visto come alleati, esplicativi e utili, leggendo questo articolo deve assalirci una certa diffidenza verso i numeri incontrollati che li popolano.
Nel futuro dovremmo chiederci se le decisioni Data-Driven che stiamo per assumere siano corrette, ovvero se i dati sottostanti siano genuini o infetti. There’s a New Boy in Town, il Malware-Data-Boy, si chiama Bob ed è molto cattivo.
In prossimi articoli parleremo anche delle tecniche e delle misure difensive da Adv-AI e di altri maligni e perfidi modi con cui l’Adv-AI si manifesta con l’intento di sconfiggerci facendo leva sulla nostra cieca e insana fiducia sui dati in nostro possesso.
Parleremo anche di come riuscire a superare la Sindrome di Stoccolma che ci lega ai nostri databases e degli altri pregiudizi, Bias del tutto umani, su cui un Adv-AI fonda il suo funesto potere nella disciplina dell’attacco CyberSec.