Cybersecurity

Perché l’AI generativa è un’arma a doppio taglio per la cybersecurity

Con questi strumenti si può generare codice, anche se in modo incompleto, ma ciò che funziona per i professionisti della sicurezza, spesso funziona anche per gli aggressori. Le misure che le organizzazioni possono adottare per cautelarsi

Pubblicato il 28 Ago 2023

Cyber-security-sicurezza-delle-informazioni-protezione-dati

Si parla molto del potenziale dell’AI generativa e dei modelli linguistici di grandi dimensioni (LLM) per rivoluzionare il settore della sicurezza. Da un lato, è difficile ignorare l’impatto positivo: questi nuovi strumenti potrebbero essere in grado di aiutare a scrivere e scansionare il codice, integrare i team con poco personale, analizzare le minacce in tempo reale e svolgere un’ampia gamma di altre funzioni per rendere i team di sicurezza più precisi, efficienti e produttivi. Con il tempo, questi strumenti potrebbero anche essere in grado di assumere i compiti banali e ripetitivi che gli analisti di sicurezza di oggi temono, liberandoli per il lavoro più coinvolgente e d’impatto che richiede l’attenzione umana e il processo decisionale.

D’altra parte, l’AI generativa e i LLM sono ancora relativamente agli albori, il che significa che le organizzazioni stanno ancora cercando di capire come utilizzarle in modo responsabile. Inoltre, i professionisti della sicurezza non sono gli unici a riconoscere il potenziale dell’AI generativa. Ciò che funziona per i professionisti della sicurezza è spesso funziona anche per gli aggressori, e gli avversari di oggi stanno esplorando modi per utilizzare l’AI generativa per i loro scopi nefasti. Raggiungeremo alla fine un punto di svolta in cui il potenziale della tecnologia come minaccia eclisserà il suo potenziale come risorsa?

L’uso dell’AI generativa e dei LLM nella programmazione

Non è esagerato dire che i modelli di intelligenza artificiale generativa come ChatGPT possono cambiare radicalmente il nostro approccio alla programmazione e alla codifica. È vero, non sono in grado di creare codice completamente da zero (almeno non ancora). Ma se si ha un’idea per un’applicazione o un programma, è molto probabile che l’AI generativa possa aiutare a realizzarla. È utile pensare a questo codice come a una prima bozza. Non sarà perfetto, ma è un utile punto di partenza. Ed è molto più facile (per non dire più veloce) modificare il codice esistente che generarlo da zero. Affidare questi compiti di base a un’intelligenza artificiale capace significa che gli ingegneri e gli sviluppatori sono liberi di dedicarsi a compiti più consoni alla loro esperienza e competenza.

AI e i LLM creano output basati su contenuti esistenti, sia che provengano da Internet o da set di dati specifici su cui sono state addestrate. Ciò significa che sono bravi a iterare su ciò che è stato fatto prima, il che può essere una manna per gli aggressori. Ad esempio, nello stesso modo in cui l’intelligenza artificiale può creare iterazioni di contenuti utilizzando lo stesso insieme di parole, può creare codice dannoso simile a qualcosa di già esistente, ma abbastanza diverso da eludere il rilevamento. Con questa tecnologia, i malintenzionati potranno generare payload o attacchi unici progettati per eludere le difese di sicurezza costruite attorno a firme di attacco note.

Un modo in cui gli aggressori lo stanno già facendo è utilizzare l’intelligenza artificiale per sviluppare varianti di webshell, codice dannoso utilizzato per mantenere la persistenza sui server compromessi. Gli aggressori possono inserire la webshell esistente in uno strumento di intelligenza artificiale generativa e chiedergli di creare iterazioni del codice dannoso. Queste varianti possono poi essere utilizzate, spesso insieme a una vulnerabilità di esecuzione di codice remoto (RCE), su un server compromesso per eludere il rilevamento.

LLM e AI danno spazio a un maggior numero di vulnerabilità zero-day e di exploit sofisticati

Gli aggressori ben finanziati sono anche bravi a leggere e analizzare il codice sorgente per identificare gli exploit, ma questo processo richiede molto tempo e un alto livello di abilità. Gli LLM e gli strumenti di intelligenza artificiale generativa possono aiutare questi aggressori, e anche quelli meno esperti, a scoprire e realizzare exploit sofisticati analizzando il codice sorgente di progetti open-source comunemente utilizzati o facendo reverse engineering di software commerciale off-the-shelf.

Nella maggior parte dei casi, gli aggressori dispongono di strumenti o plugin scritti per automatizzare questo processo. Inoltre, è più probabile che utilizzino LLM open-source, che non dispongono degli stessi meccanismi di protezione per impedire questo tipo di comportamento dannoso e sono in genere gratuiti. Il risultato sarà un’esplosione del numero di hack zero-day e di altri exploit pericolosi, simili alle vulnerabilità MOVEit e Log4Shell che hanno permesso agli aggressori di esfiltrare dati da organizzazioni vulnerabili.

Purtroppo, un’organizzazione media ha già decine o addirittura centinaia di migliaia di vulnerabilità non risolte in agguato nelle proprie basi di codice. Man mano che i programmatori introdurranno codice generato dall’AI senza scansionarlo per individuare le vulnerabilità, vedremo questo numero aumentare a causa delle cattive pratiche di codifica. Naturalmente, gli aggressori degli Stati nazionali e altri gruppi avanzati saranno pronti ad approfittarne e gli strumenti di AI generativa renderanno loro più facile farlo.

Quali misure adottare per cautelarsi

Non esistono soluzioni semplici a questo problema, ma le organizzazioni possono adottare misure per assicurarsi di utilizzare questi nuovi strumenti in modo sicuro e responsabile. Un modo per farlo è fare esattamente quello che fanno gli aggressori: utilizzando strumenti di intelligenza artificiale per la scansione di potenziali vulnerabilità nelle loro basi di codice, le organizzazioni possono identificare gli aspetti potenzialmente sfruttabili del loro codice e porvi rimedio prima che gli aggressori possano colpire. Questo aspetto è particolarmente importante per le organizzazioni che intendono utilizzare strumenti di AI e LLM per assistere nella generazione del codice. Se una intelligenza artificiale preleva codice open-source da un repository esistente, è fondamentale verificare che non porti con sé vulnerabilità di sicurezza note.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 3