Uno sguardo tecnico su come i criminali usano l'IA

L'apprendimento automatico è una delle nuove funzionalità più interessanti utilizzate oggi nella tecnologia. Tuttavia, è senza dubbio anche controverso. Al momento, questa controversia non proviene davvero dalla prospettiva che robot ultra-intelligenti prendano il sopravvento sulla razza umana; invece, è perché una tecnologia potente come questa può essere utilizzata in modo altrettanto negativo dai criminali, in quanto può essere utilizzata positivamente da coloro che hanno buone intenzioni. In questo pezzo, vorrei esplorare il lato oscuro: come i criminali usano l'IA illegalmente.

Prima che i computer fossero in grado di risolvere problemi euristici, molti sistemi di sicurezza erano progettati con il principio che ciò non sarebbe cambiato. L'idea che un computer potesse indovinare una password, leggere un captcha grafico o imparare come si comporta il traffico reale non è stata semplicemente presa in considerazione. Ora siamo circondati da una sicurezza che è stata superata dall'intelligenza artificiale.

Captcha e classificazione delle immagini

Ci sono molte, molte volte in cui un sistema dovrà confermare che un utente è in realtà un essere umano. Questo perché tutte le funzionalità che un computer offre ad un essere umano possono anche essere utilizzate o simulate da un programma per computer. Se tenti di accedere a Facebook più di tre volte, noterai che Facebook ti chiede di confermare che sei un essere umano e non un programma per computer che tenta di inserire milioni di password al secondo. Il modo in cui Facebook e molti servizi lo fanno è tramite un metodo captcha:

Per anni, questi hanno separato con successo i programmi dagli umani, fino all'arrivo dell'IA. Ora, è possibile utilizzare le reti neurali convoluzionali di base, in cui viene utilizzato un enorme set di dati di immagini captcha. Ogni captcha ha un obiettivo specificato e, dopo aver addestrato una convnet, può elaborare captcha proposti in futuro. Questo è un esempio più banale, in cui i principi di base delle reti neurali sono tutto ciò che è richiesto. Ora che i captcha possono essere bypassati, gli attacchi di forza bruta sono molto più possibili. Potresti anche aver trovato il tipo di captcha "seleziona tutte le immagini che contengono un bus", che è altrettanto facile da bypassare per l'IA. Sappiamo tutti quanto sia grande il rilevamento di oggetti: Google, anche se integrato nel loro motore di ricerca come funzionalità fondamentale e di successo.

Password con reti contraddittorie generative

Pochi di noi hanno una password simile a questa: 5f2 # V0 "P? Oz3

Molti di noi hanno password che assomigliano a questa: Kronenbourg1664

E il resto di noi ha persino password che assomigliano a questa: password

È ancora vero che quelli che seguono il mio primo esempio sono molto al sicuro dalle loro password indovinate, da una GPU umana o GTX 1080. Tuttavia, tutti gli altri sono vulnerabili. Quindi, come si possono indovinare queste password? Più semplicemente, potremmo usare un dizionario e applicare ogni parola a un input di password. Potremmo avere successo con una percentuale molto piccola dei nostri tentativi, a causa di quelle persone che seguono il mio ultimo esempio. Se sei una di quelle persone, ho piena fiducia che cambierai la tua password entro la fine di questo articolo.

Adesso diamo un'occhiata all'approccio più moderno e persino sinistro (usando ovviamente l'IA). Invece di usare un dizionario, le reti neurali vengono utilizzate per produrre un enorme elenco di password probabili. È questo elenco che viene utilizzato per richiedere un modulo di autenticazione. Tratto da PassGAN: un approccio di apprendimento profondo per indovinare la password, ecco come può essere prodotto tale elenco:

Se hai familiarità con le reti neurali (che, dovrei menzionare, è abbastanza importante per i seguenti pochi paragrafi), questo può ancora sembrare insolito. Invece di prevedere semplicemente un elemento basato su un input, stiamo imparando dai dati e quindi insegnando a un generatore a produrre diversi altri esempi. Questo è noto come una rete contraddittoria generativa, in cui vengono utilizzate due reti neurali; uno per differenziare gli input corretti e errati, e poi uno che impara da questo per produrre nuovi dati corretti tramite rumore casuale.

In primo luogo, utilizziamo un set di dati esistente che contiene password umane reali, forse da una perdita di password storica che è stata successivamente resa disponibile. Ciò dimostrerà collettivamente l'aspetto delle password umane (alcune lettere maiuscole, una data, un numero casuale, un nome, ecc.).

In secondo luogo, utilizziamo un generatore di rumore (G) che (inizialmente) produrrà dati casuali. Questi due possibili input (password false e reali) sono input per la rete neurale (o Discriminator D). Gli obiettivi sono progettati come semplici output binari. Ciò significa che durante l'allenamento, alla rete neurale viene comunicato se la password immessa è falsa o reale. Su ogni feed forward, il valore di output prodotto viene quindi confrontato con il valore target (la verità) e quindi nuovamente propagato per regolare i valori di peso in base al margine di errore. Anche il generatore ne risente, poiché il rumore in ingresso casuale inizierà a ottimizzare più vicino alle uscite della password.

Una volta modificato il generatore, qualsiasi ulteriore rumore immesso nella rete provocherà stringhe che sembrano password. Quindi, se lo lasciamo in esecuzione per alcune ore, potremmo compilare un enorme elenco di password compilate in modo intelligente.

Phishing

Il phishing è una forma molto comune di hacking. Hai mai ricevuto un'email che non ha un bell'aspetto, ma afferma di essere la tua banca, servizio telefonico o piattaforma di social media? Qualsiasi programmatore alle prime armi, che conosce un po 'di codice HTML combinato con un semplice tocco di codice back-end come PHP, può farlo. Implica l'invio di un'e-mail visivamente progettata per assomigliare, per esempio, a Facebook, e usare un linguaggio formale simile. Affermerà che è necessario aggiornare, visualizzare o modificare qualcosa e richiedere i dettagli di accesso per farlo. Qualunque cosa tu digiti, verrà inviata al server del criminale. Ad ogni modo, come viene l'IA in questo?

L'apprendimento automatico può migliorare il phishing, eseguendo la scansione di qualsiasi piattaforma, imparando come appaiono e comunicano la lingua e quindi producendo in massa e-mail false basate su determinate osservazioni da inviare automaticamente su larga scala. Tuttavia, questo non è l'unico modo. Gli hacker possono anche utilizzare gli stessi principi descritti in precedenza per indovinare le password, per indovinare gli indirizzi e-mail. Milioni di indirizzi e-mail possono essere prodotti, il che aumenta la possibilità di trovare persone tecnicamente credulone.

Molti servizi di posta elettronica, in particolare Gmail, dispongono di sistemi avanzati per rilevare le e-mail di phishing, tuttavia è possibile utilizzare l'apprendimento automatico per creare e-mail che non vengono rilevate da questi sistemi. Il set di formazione consisterebbe in una raccolta di e-mail, alcune delle quali non sono riuscite a raggiungere un utente a causa del rilevamento di phishing e altre che hanno avuto esito positivo. una rete neurale può imparare come viene rilevato il phishing, comprendendo quali sono stati catturati e quali no. In futuro, le e-mail potrebbero essere generate in base a regole non rilevate dal rilevamento di phishing, vedere qui per riferimento.

Conclusione

Innanzitutto, questi sono solo tre casi. Cosa preoccupante, ce ne sono molti di più in altre aree come la pubblicità fraudolenta, la simulazione di traffico falso e altro ancora. Tuttavia, mi piace pensare che l'uso dell'IA nel mondo legale superi di gran lunga il mondo criminale. Ironia della sorte, l'intelligenza artificiale viene utilizzata per rilevare l'attività criminale in molti modi sorprendenti dalla polizia di strada, alla frode online. Per concludere, si prega di cambiare la password se una rete contraddittoria generativa potrebbe indovinarla; ti preghiamo di non seguire alcun link che ti viene inviato a meno che tu non abbia ricontrollato l'identificazione del mittente; e infine, non usare nessuna di queste tecniche per infrangere la legge!

- - - - - - - - - - - - - - - - - -

Leggi altri articoli sulla scienza dei dati su OpenDataScience.com, inclusi tutorial e guide dal livello principiante a quello avanzato! Iscriviti alla nostra newsletter settimanale qui e ricevi le ultime notizie ogni giovedì.