banner

Notizia

Aug 28, 2023

Apprendimento automatico dell'apprendimento, parte 3: attacco ai modelli a scatola nera

Home » Sicurezza informatica » Analisi e intelligence » Apprendimento automatico parte 3: attacco ai modelli a scatola nera

Nel primo post di questa serie abbiamo trattato una breve panoramica sull'apprendimento automatico, l'approccio Revoke-Obfuscation per il rilevamento di script PowerShell offuscati e i miei sforzi per migliorare il set di dati e i modelli per il rilevamento di PowerShell offuscato. Alla fine abbiamo ottenuto tre modelli: una regressione logistica regolarizzata L2 (Ridge), un classificatore LightGBM e un'architettura di rete neurale.

Il secondo post riguardava l'attacco di questi modelli da ascatola bianca prospettiva, ovvero dove abbiamo l'intero modello addestrato stesso, comprese le funzionalità di input, l'architettura del modello, i parametri/pesi del modello e i dati di addestramento. Consiglio vivamente almeno di dare una scorsa a questi primi due post prima di procedere per garantire che tutto abbia il maggior senso possibile.

In questo post tratteremo gli aspetti più comuni e difficiliscatola nera prospettiva. Qui sappiamo solo quali caratteristiche vengono estratte da ciascun campione – anche l’architettura rimarrà opaca per noi.

Dopo aver letto quelle che sono state sicuramente centinaia di pagine di ricerca accademica sull'apprendimento automatico antagonista, posso tranquillamente affermare che una buona parte della ricerca è stata condotta dal punto di vista della scatola bianca. Ricorda la nostra definizione di attacchi scatola bianca e scatola nera dal secondo post di questa serie:

Inoltre, la maggior parte della ricerca sembra essere stata nel campo del riconoscimento delle immagini. Anche se questo è interessante, è sicuramente uno spazio problematico diverso da quello con cui abbiamo a che fare. Nello specifico, le immagini possono avere più pixel perturbati di una piccola quantità senza che l'immagine antagonista risultante appaia modificata all'occhio umano. Per molti dei problemi con cui abbiamo a che fare in termini di sicurezza, ad esempio il nostro spazio problematico di offuscamento di PowerShell, siamo più limitati in a) nel numero di funzionalità che possiamo modificare eb) in che misura possiamo modificare tali funzionalità. Cioè, abbiamo un sottospazio funzionale più piccolo di modifiche che possiamo apportare agli script di PowerShell rispetto alle immagini.

Coinvolgono numerosi attacchi con scatola neraestrazione del modello (vedere la sezione successiva) per creare un modello locale, talvolta noto come modello sostitutivo o surrogato. Gli attacchi esistenti vengono quindi eseguiti contro il modello locale per generare campioni avversari nella speranza che anche questi campioni sfuggano al modello target. Questo spesso funziona a causa del fenomeno ditrasferibilità degli attacchi, di cui parleremo tra poco.

Gli attacchi scatola nera possono anche saltare l'estrazione del modello ed interrogare direttamente gli input rispetto al modello di destinazione. Questi attacchi, per i quali la configurazione interna del modello non è affatto necessaria, sono quelli che nella letteratura accademica sono conosciuti come attacchi black box. Tuttavia, utilizzando l'estrazione del modello possiamo potenzialmente applicare attacchi white box contro cloni locali di modelli black box a cui abbiamo solo un oracolo a cui inviare input e da cui ottenere etichette.

L'estrazione del modello, secondo Will Pearce e altri, è una delle primitive più fondamentali nel ML contraddittorio. Sebbene questa idea fosse probabilmente in circolazione da un po', credo che le prime formalizzazioni dell'estrazione del modello (o almeno quella che ha reso popolare il metodo) siano state il documento del 2016 Transferability in Machine Learning: from Phenomena to Black-Box Attacks using Adversarial Samples" e il Articolo del 2017 "Practical black box Attacks Against Machine Learning", entrambi di Papernot et al. Il riepilogo generale del loro approccio tratto dal documento del 2017 è:

La nostra strategia di attacco consiste nell'addestrare un modello locale per sostituire il DNN [Deep Neural Network] target, utilizzando input generati sinteticamente da un avversario ed etichettati dal DNN target. Usiamo il sostituto locale per creare esempi contraddittori e scopriamo che sono classificati erroneamente dal DNN preso di mira.

L'idea è quella di approssimare il limite decisionale del modello target con meno dati (e solitamente diversi) rispetto a quelli su cui il modello è stato originariamente addestrato. Fondamentalmente, l'estrazione del modello prevede innanzitutto l'invio di un numero di campioni etichettati noti al modello, che funziona come un oracolo di etichettatura. Immagina di inviare un gruppo di file binari a una sorta di sito Web che ti consente di sapere se i file binari sono dannosi o meno. Oppure immagina di avere i nostri modelli Revoke-Obfuscation adattati come una sorta di API interna, in cui possiamo inviare le misurazioni delle nostre funzionalità e ottenere un risultato dell'etichetta normale o offuscato o un punteggio di probabilità di offuscamento. Con input sufficienti, possiamo addestrare un modello sostitutivo locale che funzioni in modo simile al modello target.

CONDIVIDERE