Pivot di intelligenza artificiale e Machine Learning aggiunti alla barra dei bug di Security Development Lifecycle

Di Andrew Marshall, Jugal Parikh, Emre Kiciman e Ram Shankar Siva Kumar

novembre 2019

Questo documento è un risultato finale delle procedure di progettazione di Microsoft AETHER per il gruppo di lavoro sull'intelligenza artificiale e funge da supplemento alla barra dei bug SDL esistente, usata per la valutazione delle vulnerabilità di sicurezza tradizionali. Il documento è pensato per essere usato come riferimento per la valutazione dei problemi di sicurezza correlati ad intelligenza artificiale e Machine Learning. Per informazioni più dettagliate sull'analisi e la mitigazione delle minacce, vedere Sistemi e dipendenze di intelligenza artificiale e Machine Learning per la modellazione delle minacce.

Questo materiale sussidiario fa riferimento e si basa ampiamente sulla tassonomia conflittuale delle minacce dell'apprendimento automatico creata da Ram Shankar Siva Kumar, David O'Brien, Kendra Albert, Salome Viljoen, e Jeffrey Snover, intitolato Modalità di errore nel Machine Learning. Tenere presente quanto segue: mentre la ricerca è basata su comportamenti intenzionali o dannosi e accidentali in modalità di errore relativo al Machine Learning, questo supplemento della barra dei bug si concentra interamente sui comportamenti intenzionali o dannosi che comportano un evento imprevisto di sicurezza e/o la distribuzione di una correzione.

Minaccia Gravità Descrizione, rischi aziendali, esempi
Poisoning dei dati Da importante a critico

Danneggiamento dei dati di training: l'obiettivo finale dell'utente malintenzionato è di contaminare il modello di computer generato durante la fase di training, in modo che le stime sui nuovi dati vengano modificate nella fase di test.

Negli attacchi di poisoning mirati, l'utente malintenzionato vuole creare una classificazione errata di esempi specifici in modo da creare oppure omettere azioni specifiche.

Invio di software antivirus come malware per forzarne la classificazione errata come dannosa ed eliminare l'uso di software antivirus mirato nei sistemi client.

Un'azienda scorpora un sito Web noto e attendibile per dati futuri in modo da eseguire il training dei modelli. Il sito Web del provider di dati viene conseguentemente compromesso tramite attacchi SQL injection. L'utente malintenzionato può danneggiare quando vuole il set di dati e il modello sottoposto a training non riconosce la contaminazione dei dati.

Furto dei modelli Da importante a critico

Ricreazione del modello sottostante tramite esecuzione di query legittime. La funzionalità del modello nuovo è identica a quella del modello sottostante. Una volta ricreato, il modello può essere invertito per ripristinare le informazioni sulle funzionalità o creare inferenze sui dati di training.

Risoluzione delle equazioni: per un modello che restituisce le probabilità della classe tramite output dell'API, un utente malintenzionato può creare query per determinare variabili sconosciute in un modello.

Ricerca di percorsi: un attacco che sfrutta le peculiarità dell'API per estrarre le "decisioni" prese da un albero durante la classificazione di un input.

Attacco di trasferibilità: un antagonista può eseguire il training di un modello locale, possibilmente eseguendo query di stima al modello di destinazione e usarlo per creare esempi contraddittori che trasferiscono al modello di destinazione. Se il modello viene estratto e individuato come vulnerabile a un tipo di input antagonistico, i nuovi attacchi contro il modello distribuito in produzione possono essere sviluppati completamente offline dall'utente malintenzionato che ha estratto una copia del modello.

Nelle impostazioni in cui un modello di Machine Learning serve a rilevare comportamenti contraddittori, ad esempio l'identificazione di posta indesiderata, la classificazione di malware e il rilevamento di anomalie di rete, l'estrazione del modello può facilitare gli attacchi di evasione

Inversione del modello Da importante a critico

È possibile recuperare le funzionalità private usate nei modelli di Machine Learning. inclusa la ricostruzione di dati di training privati a cui l'utente malintenzionato non ha accesso. Questa operazione viene eseguita individuando l'input che consente di massimizzare il livello di confidenza restituito, soggetto alla classificazione che corrisponde alla destinazione.

Esempio: ricostruzione dei dati di riconoscimento facciale da nomi indovinati o noti e accesso API per eseguire query sul modello.

Esempio contraddittorio nel dominio fisico Critico Questi esempi si possono manifestare nel dominio fisico, ad esempio un'automobile senza pilota che viene indotta a ignorare un segnale di stop a causa di un certo colore di luce (input antagonista) che illumina il segnale, forzando il sistema di riconoscimento delle immagini a non visualizzare più il segnale di stop come tale.
Catena di alimentazione dell'attacco di Machine Learning Critico

A causa di risorse di grandi dimensioni (dati e calcolo) necessari per eseguire il training degli algoritmi, la procedura corrente consiste nel riutilizzare i modelli sottoposti a training da grandi aziende e modificarli leggermente per le attività a portata di mano (ad esempio ResNet è un modello di riconoscimento delle immagini diffuso di Microsoft).

Questi modelli vengono curati in un modello Zoo (Caffe ospita modelli di riconoscimento delle immagini comuni).

In questo attacco, l'utente antagonista attacca i modelli ospitati in Caffe, causando l'avvelenamento del pozzo per tutti gli altri.

Algoritmo con backdoor da un provider di Machine Learning dannoso Critico

Compromissione dell'algoritmo sottostante

Un provider dannoso di Machine Learning as a service presenta un algoritmo di backdoor, in cui vengono recuperati i dati di training privati. Questo consente all'utente malintenzionato di ricostruire dati sensibili, ad esempio visi e testi, partendo solo dal modello.

Riprogrammazione della rete neurale Da importante a critico

Per mezzo di una query appositamente creata da un utente malintenzionato, i sistemi di Machine Learning possono essere riprogrammati in un'attività che devia dalla finalità originale del creatore

Controlli di accesso vulnerabili su un'API di riconoscimento facciale che consente a terze parti l'incorporazione nelle app progettate per danneggiare gli utenti, ad esempio un generatore di deep fake.

Si tratta di uno scenario di rimozione di abuso/account

Perturbazione antagonista Da importante a critico

Negli attacchi di tipo perturbativo, l'utente malintenzionato modifica furtivamente la query per ottenere una risposta desiderata da un modello distribuito in produzione. Si tratta di una violazione dell'integrità di input del modello che comporta attacchi di tipo fuzzy, in cui il risultato finale non è necessariamente una violazione di accesso o EOP, ma compromette le prestazioni di classificazione del modello.

Tale violazione può essere perpetrata da troll che usano determinate parole di destinazione in modo che l'intelligenza artificiale li vieti, negando efficacemente il servizio agli utenti legittimi con un nome che corrisponde a una parola "vietata".

Forzare i messaggi di posta elettronica benigni in modo che vengano classificati come posta indesiderata o far passare inosservato un esempio dannoso. Noti anche come attacchi di evasione o imitazione dei modelli.

L'autore dell'attacco può creare input per ridurre il livello di attendibilità della classificazione corretta, soprattutto in scenari a conseguenze elevate. Questo attacco può anche assumere l'aspetto di un numero elevato di falsi positivi per sopraffare gli amministratori o i sistemi di monitoraggio con avvisi fraudolenti non distinguibili dagli avvisi legittimi.

Inferenza dell'appartenenza Da moderato a critico

Dedurre le singole appartenenze in un gruppo usato per eseguire il training di un modello

Esempio: stima di procedure chirurgiche basate su età/sesso/ospedale