Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
| Microsoft Corporation | Berkman Klein Center for Internet and Society presso l'Università di Harvard |
|---|---|
Novembre 2019
Introduzione e sfondo
Negli ultimi due anni sono stati scritti più di 200 documenti su come il Machine Learning (ML) può fallire a causa di attacchi avversari sugli algoritmi e sui dati; questo numero cresce significativamente se consideriamo anche le modalità di errore non avversarie. La quantità di documenti ha reso difficile per i professionisti di ML, per non parlare di ingegneri, avvocati e responsabili politici, tenere il passo con gli attacchi contro e le difese dei sistemi di ML. Tuttavia, poiché questi sistemi diventano più diffusi, la necessità di capire come falliscono, sia a mano di un avversario che a causa della progettazione intrinseca di un sistema, diventerà solo più pressante. Lo scopo di questo documento è quello di tabulare congiuntamente entrambe le modalità di errore in un'unica posizione.
Errori intenzionali in cui l'errore è causato da un avversario attivo che tenta di sottrarre il sistema al raggiungimento dei propri obiettivi, ovvero di declassificare il risultato, dedurre dati di training privati o di rubare l'algoritmo sottostante.
Errori involontari in cui l'errore è dovuto al fatto che un sistema di Machine Learning produce un risultato formalmente corretto ma completamente non sicuro.
Si vuole sottolineare che esistono altri framework e tassonomie che evidenziano singolarmente le modalità di errore intenzionali[1],[2] e le modalità di errore non intenzionali[3],[4]. La classificazione riunisce le due modalità di errore separate in un'unica posizione e soddisfa le esigenze seguenti:
La necessità di fornire agli sviluppatori di software, ai risponditori di eventi imprevisti di sicurezza, agli avvocati e ai responsabili politici con un comune linguaggio per parlare di questo problema. Dopo aver sviluppato la versione iniziale della tassonomia l'anno scorso, abbiamo lavorato con team di sicurezza e MACHINE Learning in Microsoft, 23 partner esterni, organizzazioni standard e governi per comprendere come gli stakeholder userebbero il nostro framework. In base a questo studio sull'usabilità e sul feedback degli stakeholder, è stata apportata una modifica al framework.
Risultati: Quando si presenta una modalità di errore di Machine Learning, si è spesso osservato che gli sviluppatori di software e gli avvocati hanno mappato mentalmente le modalità di errore di Machine Learning agli attacchi software tradizionali, ad esempio l'esfiltrazione di dati. Quindi, in tutto il documento si tenta di evidenziare in che modo le modalità di errore di Machine Learning sono significativamente diverse dagli errori software tradizionali dal punto di vista tecnologico e dei criteri.
La necessità di una piattaforma comune per i tecnici di basarsi su e integrare nelle procedure di sviluppo e sicurezza software esistenti. In generale, volevamo che la tassonomia fosse più di uno strumento educativo: vogliamo che sia efficace per ottenere risultati di ingegneria tangibili.
Risultati: Usando questa tassonomia come obiettivo, Microsoft ha modificato il processo del ciclo di vita dello sviluppo della sicurezza per l'intera organizzazione. In particolare, i data scientist e i tecnici della sicurezza di Microsoft ora condividono il linguaggio comune di questa tassonomia, consentendo loro di modellare in modo più efficace i sistemi di Machine Learning prima di distribuirli nell'ambiente di produzione; I risponditori degli eventi imprevisti di sicurezza hanno anche una barra dei bug per valutare queste minacce net-new specifiche di ML, il processo standard per la valutazione e la risposta delle vulnerabilità usate dal Microsoft Security Response Center e da tutti i team dei prodotti Microsoft.
La necessità di un vocabolario comune per descrivere questi attacchi tra responsabili politici e avvocati. Riteniamo che questo per descrivere diverse modalità di errore di Machine Learning e l'analisi del modo in cui i danni potrebbero essere regolamentati è un primo passo significativo verso criteri informati.
Risultati: Questa tassonomia è scritta per un ampio pubblico interdisciplinare, quindi i responsabili politici che esaminano i problemi dal punto di vista generale di ML/IA, così come domini specifici come la disinformazione/assistenza sanitaria dovrebbero trovare utile il catalogo della modalità di errore. Vengono inoltre evidenziati gli interventi legali applicabili per affrontare le modalità di errore.
Per ulteriori informazioni sulle vulnerabilità del Machine Learning, vedere anche La modellazione delle minacce nei sistemi di AI/ML e le dipendenze di Microsoft e I pivot del Bug Bar SDL per le vulnerabilità del Machine Learning.
Come usare questo documento
All'inizio, sappiamo che si tratta di un documento vivente che si evolverà nel tempo con il panorama delle minacce. Non sono inoltre previste mitigazioni tecnologiche per queste modalità di errore, in quanto le difese sono specifiche dello scenario e si associano al modello di minaccia e all'architettura del sistema in considerazione. Le opzioni presentate per la mitigazione delle minacce si basano sulla ricerca corrente con l'aspettativa che tali difese si evolveranno anche nel tempo.
Per i tecnici, è consigliabile esplorare la panoramica delle possibili modalità di errore e passare al documento di modellazione delle minacce. In questo modo, i tecnici possono identificare minacce, attacchi, vulnerabilità e usare il framework per pianificare contromisure, se disponibili. Si fa quindi riferimento alla barra dei bug che esegue il mapping di queste nuove vulnerabilità nella tassonomia insieme alle vulnerabilità del software tradizionali e fornisce una valutazione per ogni vulnerabilità di Machine Learning ,ad esempio critica, importante. Questa barra dei bug è facilmente integrata nei processi/playbook di risposta agli eventi imprevisti esistenti.
Per gli avvocati e i responsabili dei criteri, questo documento organizza le modalità di errore di ML e presenta un framework per analizzare i principali problemi rilevanti per chiunque esplori le opzioni dei criteri, ad esempio il lavoro svolto qui[5],[6]. In particolare, abbiamo classificato guasti e conseguenze in modo che i responsabili politici possano iniziare a tracciare distinzioni tra le cause, che informeranno le iniziative politiche pubbliche per promuovere la sicurezza e la protezione dell'apprendimento automatico. Speriamo che i responsabili politici useranno queste categorie inizino a delineare il modo in cui i regimi giuridici esistenti possono (non) acquisire adeguatamente questioni emergenti, quali regimi giuridici storici o soluzioni politiche potrebbero aver affrontato danni simili e dove dovremmo essere particolarmente sensibili alle questioni delle libertà civili.
Struttura documento
Nelle sezioni Modalità di errore intenzionale e Modalità di errore non intenzionale viene fornita una breve definizione dell'attacco e un esempio illustrativo della letteratura.
Nella sezione Modalità di errore intenzionale vengono forniti i campi aggiuntivi:
Cosa tenta di compromettere l'attacco nel sistema di Machine Learning: riservatezza, integrità o disponibilità? Definiamo riservatezza assicurando che i componenti del sistema di Machine Learning (dati, algoritmo, modello) siano accessibili solo dalle parti autorizzate; L'integrità è definita in modo da garantire che il sistema ml possa essere modificato solo dalle parti autorizzate; La disponibilità è definita come garanzia che il sistema di Machine Learning sia accessibile alle parti autorizzate. Insieme, riservatezza, integrità e disponibilità è chiamata triade CIA. Per ogni modalità di errore intenzionale, tentiamo di identificare quale triade della CIA è compromessa.
Quanta conoscenza è necessaria per montare questo attacco: "blackbox" o "whitebox"? Negli attacchi in stile Blackbox. L'utente malintenzionato non ha accesso diretto ai dati di training, non conosce l'algoritmo ml usato e non ha accesso al codice sorgente del modello. L'attaccante interroga solo il modello e osserva la risposta. In un attacco in stile whitebox, l'utente malintenzionato ha conoscenza dell'algoritmo ML o accesso al codice sorgente del modello.
Commento sul fatto se l'attaccante stia violando la nozione tecnologica tradizionale di accesso/autorizzazione.
Riepilogo dei guasti intenzionalmente motivati
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Riepilogo errori imprevisti
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dettagli sugli errori intenzionalmente motivati
| Scenario # | Classe di attacco | Descrizione | Tipo di compromissione | Scenario |
|---|---|---|---|---|
| 1 | Attacchi di perturbazione | Negli attacchi in stile di perturbazione, l'utente malintenzionato modifica in modo furtivo la query per ottenere una risposta desiderata | Integrità | Immagine: il rumore viene aggiunto a un'immagine a raggi X, che fa passare le stime dall'analisi normale all'anomalia [1][Blackbox] Traduzione testuale: i caratteri specifici vengono modificati per ottenere una traduzione errata. L'attacco può eliminare parole specifiche o anche rimuovere completamente la parola[2][Blackbox e Whitebox] Discorso: i ricercatori hanno mostrato che data una forma d'onda vocale, un'altra forma d'onda può essere esattamente replicata, ma venga trascritta in un testo totalmente diverso [3][Whitebox, ma può essere esteso a blackbox] |
| 2 | Attacchi di avvelenamento | L'obiettivo dell'utente malintenzionato è quello di contaminare il modello di computer generato nella fase di training, in modo che le stime sui nuovi dati vengano modificate nella fase di test Mirato: negli attacchi di avvelenamento mirato, l'attaccante vuole classificare erroneamente esempi specifici Indiscriminato: l'obiettivo è quello di causare l'effetto DoS, che rende il sistema non disponibile. |
Integrità | In un set di dati medico in cui l'obiettivo è stimare il dosaggio del farmaco Warfarin utilizzando informazioni demografiche, ecc., i ricercatori hanno inserito campioni dannosi con un tasso di avvelenamento dell'8%, che ha modificato il dosaggio del 75,06% per metà dei pazienti[4][Blackbox] Nel chatbot Tay, le conversazioni future sono state compromesse perché una frazione delle conversazioni precedenti è stata usata per addestrare il sistema tramite feedback[5] [Blackbox] |
| 3 | Inversione del modello | È possibile recuperare le funzionalità private usate nei modelli di Machine Learning | Riservatezza; | I ricercatori sono riusciti a recuperare i dati di allenamento privati utilizzati per addestrare l'algoritmo[6]. Gli autori sono stati in grado di ricostruire i volti solamente con il nome e l'accesso al modello, al punto in cui i Mechanical Turks potevano usare la foto per identificare un individuo da una schiera con un'accuratezza del 95%. Gli autori sono stati anche in grado di estrarre informazioni specifiche. [Whitebox e Blackbox][12] |
| 4 | Attacco di inferenza dell'appartenenza | L'utente malintenzionato può determinare se un determinato record di dati faceva parte del set di dati di training del modello o meno | Riservatezza | I ricercatori sono stati in grado di prevedere la procedura principale di un paziente(ad esempio: chirurgia che il paziente ha attraversato) in base agli attributi (ad esempio: età, sesso, ospedale)[7][Blackbox] |
| 5 | Furto di modelli | Gli utenti malintenzionati ricreano il modello sottostante interrogando legittimamente il modello. La funzionalità del nuovo modello è uguale a quella del modello sottostante. | Riservatezza | I ricercatori hanno emulato correttamente l'algoritmo sottostante di Amazon, BigML. Ad esempio, nel caso bigML, i ricercatori sono stati in grado di recuperare il modello usato per stimare se qualcuno dovrebbe avere un rischio di credito valido/errato (set di dati della carta di credito tedesca) usando 1.150 query e entro 10 minuti[8] |
| 6 | Riprogrammazione di reti neurali profonde | Per mezzo di una query appositamente creata da un avversario, i sistemi di Machine Learning possono essere riprogrammati in un'attività che devia dalla finalità originale dell'autore | Integrità, disponibilità | Illustrato in che modo ImageNet, un sistema usato per classificare una delle diverse categorie di immagini è stato riutilizzato per contare i quadrati. Gli autori terminano il documento con uno scenario ipotetico: un utente malintenzionato invia immagini Captcha al classificatore di visione artificiale in un servizio foto ospitato nel cloud per risolvere i captcha di immagine per creare account di posta indesiderata[9] |
| 7 | Esempio antagonista nel dominio fisico | Un esempio antagonista è un input/query da un'entità dannosa inviata con l'unico scopo di ingannare il sistema di Machine Learning Questi esempi possono manifestarsi nel dominio fisico | Integrità | I ricercatori 3D stampano un fucile con trama personalizzata che inganna il sistema di riconoscimento delle immagini nel pensare che sia una tartarugha[10] I ricercatori costruiscono occhiali da sole con un design che ora può ingannare i sistemi di riconoscimento delle immagini, e non riconoscere più i visi correttamente[11] |
| 8 | Provider di Machine Learning dannosi che possono recuperare i dati di addestramento | Un provider di Machine Learning dannoso può eseguire query sul modello usato dal cliente e recuperare i dati di training del cliente | Riservatezza | I ricercatori mostrano come un provider dannoso presenti un algoritmo con backdoor, in cui vengono recuperati i dati di addestramento privati. Sono stati in grado di ricostruire visi e testi, solo con il modello. [12] |
| 9 | Attacco alla catena di approvvigionamento del ML[13] | A causa di risorse di grandi dimensioni (dati e calcolo) necessari per eseguire il training degli algoritmi, la pratica 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 sono curati ina Model Zoo (Caffe ospita modelli di riconoscimento delle immagini più diffusi). In questo attacco, l'avversario attacca i modelli ospitati in Caffe, avvelenando così il pozzo per chiunque altro. | Integrità | I ricercatori mostrano come è possibile che un utente malintenzionato controlli codice dannoso in uno dei modelli più diffusi. Uno sviluppatore di Machine Learning insospettabile scarica questo modello e lo usa come parte del sistema di riconoscimento delle immagini nel codice [14]. Gli autori mostrano come in Caffe esiste un modello il cui hash SHA1 non corrisponde al digest degli autori, che indica la manomissione. Sono disponibili 22 modelli senza hash SHA1 per i controlli di integrità. |
| 10 | Backdoor Machine Learning | Come nell'"Attacco alla supply chain di machine learning", in questo scenario di attacco, il processo di training è completamente o parzialmente esternalizzato a una parte malintenzionata che vuole fornire all'utente un modello addestrato che contiene una backdoor. Il modello con backdoor funziona bene sulla maggior parte degli input (inclusi gli input che l'utente finale può tenere fuori come set di convalida), ma causa errori di classificazione mirati o degrada l'accuratezza del modello per gli input che soddisfano una proprietà segreta scelta dall'attaccante, a cui si fa riferimento come trigger della backdoor. | Riservatezza, integrità | I ricercatori hanno creato un classificatore backdoor di segnali stradali negli Stati Uniti che identifica i segnali di stop come limiti di velocità solo quando un adesivo speciale viene aggiunto al segnale di stop (trigger backdoor). Stanno estendendo questo lavoro ai sistemi di elaborazione del testo, in cui parole specifiche vengono sostituite con il trigger che è l'accento dell'oratore. |
| 11 | Sfruttare le dipendenze software del sistema di Machine Learning | In questo attacco, l'utente malintenzionato non modifica gli algoritmi. Sfrutta invece le vulnerabilità software tradizionali, ad esempio gli overflow del buffer. | Riservatezza, integrità, disponibilità, | Un avversario invia un input danneggiato a un sistema di riconoscimento delle immagini, causandone l'errata classificazione sfruttando un bug del software in una delle dipendenze. |
Dettagli sugli errori imprevisti
| Scenario # | Classe di attacco | Descrizione | Tipo di compromissione | Scenario |
|---|---|---|---|---|
| 12 | Hacking delle ricompense | I sistemi di apprendimento per rinforzo agiscono in modi imprevisti a causa di discrepanze tra la ricompensa specificata e la vera ricompensa prevista. | Sicurezza del sistema | Un enorme corpus di esempi di gioco nell'intelligenza artificiale è stato compilato qui[1] |
| 13 | Effetti collaterali | Il sistema di apprendimento per rinforzo interrompe l'ambiente mentre cerca di raggiungere il suo obiettivo. | Sicurezza del sistema | Scenario, verbatim degli autori in [2]: "Si supponga che un progettista voglia che un agente RL (ad esempio, il nostro robot per la pulizia) di raggiungere un obiettivo: spostare una scatola da un lato di una stanza all'altra. A volte il modo più efficace per raggiungere l'obiettivo può comportare azioni non correlate e distruttive per il resto dell'ambiente, come far cadere un vaso d'acqua che si trova nel suo percorso. Se l'agente riceve una ricompensa solo per lo spostamento della scatola, probabilmente farà cadere il vaso. |
| 14 | Turni di distribuzione | Il sistema viene testato in un tipo di ambiente, ma non è in grado di adattarsi alle modifiche in altri tipi di ambiente | Sicurezza del sistema | I ricercatori hanno formato due agenti RL all'avanguardia, Rainbow DQN e A2C in una simulazione per evitare la lava. Durante l'addestramento, l'agente RL è riuscito a evitare la lava con successo e a raggiungere il suo obiettivo. Durante i test, hanno leggermente spostato la posizione della lava, ma l'agente RL non è stato in grado di evitare [3] |
| 15 | Esempi antagonisti naturali | Il sistema riconosce erroneamente un input trovato utilizzando il data mining negativo rigido | Sicurezza del sistema | Qui gli autori mostrano come tramite un semplice processo di data mining negativo rigido[4], è possibile confondere il sistema di Machine Learning inoltrando l'esempio. |
| 16 | Danneggiamento comune | Il sistema non è in grado di gestire danneggiamenti e perturbazioni comuni, ad esempio inclinazione, zoom o immagini rumorose. | Sicurezza del sistema | Gli autori[5] mostrano in che modo i danneggiamenti comuni, ad esempio le modifiche alla luminosità, al contrasto, alla nebbia o al rumore aggiunte alle immagini, presentano un calo significativo delle metriche nel riconoscimento delle immagini |
| 17 | Test incompleti in condizioni realistiche | Il sistema ml non viene testato in condizioni realistiche in cui è destinato a funzionare | Sicurezza del sistema | Gli autori di [25] evidenziano che, mentre i difensori in genere mettono in considerazione l'affidabilità dell'algoritmo ml, perdono la vista di condizioni realistiche. Ad esempio, sostengono che un segnale di stop abbattuto dal vento (che è più realistico) sia più probabile di un utente malintenzionato che tenta di perturbare gli input del sistema. |
Ringraziamenti
Vorremmo ringraziare Andrew Marshall, Magnus Nystrom, John Walton, John Lambert, Sharon Xia, Andi Comissoneru, Emre Kiciman, Jugal Parikh, Sharon Gillet, membri del comitato di Intelligenza Artificiale e Etica in Ingegneria e Ricerca (AETHER) nel flusso di lavoro sulla Sicurezza di Microsoft, Amar Ashar, Samuel Klein, Jonathan Zittrain, membri del Gruppo di Lavoro per la Sicurezza dell'AI al Berkman Klein per i loro utili commenti. Vorremmo anche ringraziare i revisori di 23 partner esterni, organizzazioni standard e organizzazioni governative per modellare la tassonomia.
Bibliografia
[1] Li, Guofu, et al. "Security Matters: A Survey on Adversarial Machine Learning". arXiv preprint arXiv:1810.07339 (2018).
[2] Integerborty, Anirban, et al. "Attacchi antagonisti e difese: un sondaggio." arXiv preprint arXiv:1810.00069 (2018).
[3] Ortega, Pedro e Vishal Maini. "Costruire intelligenza artificiale sicura: specificazione, robustezza e garanzia." DeepMind Safety Research Blog (2018).
[4] Amodei, Dario, et al. «Concrete problems in AI safety». arXiv preprint arXiv:1606.06565 (2016).
Shankar Siva Kumar, Ram, et al. "Law and Adversarial Machine Learning". arXiv preprint arXiv:1810.10731 (2018).
Calo, Ryan, et al. "Ingannare un robot è considerato hacking?". University of Washington School of Law Research Paper 2018-05 (2018).
[7] Paschali, Magdalini, et al. "Generalizzabilità vs. Robustezza: Adversarial Examples per l'Imaging Medico." arXiv preprint arXiv:1804.00504 (2018).
[8] Ebrahimi, Javid, Daniel Lowd e Dejing Dou. "Sugli esempi avversari per la traduzione automatica neurale a livello di carattere." arXiv preprint arXiv:1806.09030 (2018)
Carlini, Nicholas e David Wagner. "Esempi antagonisti audio: attacchi mirati alla conversione da voce a testo." arXiv preprint arXiv:1801.01944 (2018).
[10] Jagielski, Matthew, et al. "Manipolazione dell'apprendimento automatico: attacchi di avvelenamento e contromisure per l'apprendimento della regressione". arXiv preprint arXiv:1804.00308 (2018)
[11] [https://blogs.microsoft.com/blog/2016/03/25/learning-tays-introduction/]
Fredrikson M, Jha S, Ristenpart T. 2015. Attacchi di inversione del modello che sfruttano le informazioni di attendibilità e le contromisure di base
Shokri R, Stronati M, Song C, Shmatikov V. 2017. Attacchi di inferenza dell'appartenenza ai modelli di Machine Learning. In Atti del Simposio IEEE 2017 sulla Sicurezza e la Privacy (SP), San Jose, CA, 22–24 maggio 2017, pp. 3–18. New York, NY: IEEE.
[14] Tramèr, Florian, et al. "Stealing Machine Learning Models via Prediction APIs." USENIX Security Symposium. 2016.
Elsayed, Gamaleldin F., Ian Goodfellow e Jascha Sohl-Dickstein. "Riprogrammazione antagonista delle reti neurali". arXiv preprint arXiv:1806.11146 (2018).
Athalye, Anish e Ilya Suzkever. "Sintetizzazione di esempi avversari robusti." arXiv preprint arXiv:1707.07397(2017)
[17] Sharif, Mahmood, et al. 'Adversarial Generative Nets: Neural Network Attacks on State-of-the-Art Face Recognition'. arXiv preprint arXiv:1801.00349 (2017).
[19] Xiao, Qixue, et al. "Security Risks in Deep Learning Implementations". arXiv preprint arXiv:1711.11008 (2017).
Gu, Tianyu, Brendan Dolan-Gavitt e Siddharth Garg. "Badnets: identificazione delle vulnerabilità nella supply chain del modello di Machine Learning". arXiv preprint arXiv:1708.06733 (2017)
[21] [https://www.wired.com/story/machine-learning-backdoors/]
[22] [https://docs.google.com/spreadsheets/d/e/2PACX-1vRPiprOaC3HsCf5Tuum8bRfzYUiKLRqJmbOoC-32JorNdfyTiRRsR7Ea5eWtvsWzuxo8bjOxCG84dAg/pubhtml]
[23] Amodei, Dario, et al. "Concrete problems in AI safety." arXiv preprint arXiv:1606.06565 (2016).
[24] Leike, Jan, et al. "AI safety gridworlds". arXiv preprint arXiv:1711.09883 (2017).
[25] Gilmer, Justin, et al. "Motivare le regole del gioco per ricerche di esempio antagoniste". arXiv preprint arXiv:1807.06732 (2018).
Hendrycks, Dan e Thomas Dietterich. "Benchmarking della robustezza delle reti neurali in presenza di danneggiamenti e perturbazioni comuni". arXiv preprint arXiv:1903.12261 (2019).