Ho già parlato in diverse occasioni di attacchi del tipo SQL Injection e questo non è che una sua evoluzione. Come è noto SQL è il linguaggio standard impiegato per interagire con un database relazionale.
Uno sguardo alle SQL injection
SQL Injection o “Structured Query Language Injection” è un tipo di attacco nei confronti del database di un’applicazione web che consiste nella esecuzione di una interrogazione malevola. Molte applicazioni WEB sono infatti tuttora vulnerabili a questo tipo di attacco che consiste nell’inserire nei campi di ricerca o nei form interni delle stringhe di testo che includono dei simboli o dei caratteri speciali che a noi possono sembrare innocui vengono interpretati in determinati modi dal database.
Dato che gli attacchi SQLi sono sempre in testa alle classifiche, allo scopo di migliorare le tecniche di difesa, i ricercatori di sicurezza hanno approfondito questo tipo di attacco concentrandosi in particolare su alcune tecniche di detection basate su due paradigmi:
Advertising
detection tramite signature: le signatures sono identificatori specifici di modelli di attacco noti, come per esempio sequenze di caratteri, payloads o comportamenti particolari associati a vulnerabilità o exploit;
Machine Learning detection: l’individuazione dell’attacco è devoluta a modelli di ML che grazie all’addestramento estensivo sono capaci di individuare e bloccare tentativi di attacco.
Mentre per le tecniche basate su signature è chiaro che un attacco viene individuato se la signature è presente nel database di firme malevole, per quanto riguarda la detection tramite algoritmi ML c’è molto da dire. Quest’ultima categoria infatti cerca di individuare gli attacchi SQLi grazie all’addestramento cui è stato sottoposto l’algoritmo di ML.
Per cercare di evitare di essere individuati dagli algoritmi di Machine Learning detection gli attaccanti hanno inventato una nuova tecnica di attacco chiamata per l’appunto Adversarial SQLi attack. Cerchiamo ora di capire che cosa sia un Adversarial SQLi Attack, come funziona un attacco di questo tipo e come lo si può contrastare.
Cominciamo come al solito dall’inizio, la definizione di Adversarial SQLi Attack.
Per Adversarial SQLi Attack si intende un attacco di tipo SQL injection costruito appositamente per non essere individuato da modelli di Machine Learning che si occupano di contrastare attacchi SQLi.
In pratica si tratta di un tipo di attacco che sfrutta le vulnerabilità dell’addestramento del modello ML impiegato da strumenti come i Web Application Firewall (WAF) per individuare gli attacchi di tipo SQL Injection.
Consiste nel modificare un payload malevolo (codice malevolo usato per l’attacco SQLi) affinchè il modello di ML utilizzato nei WAF non lo classifichi come tale ma come una richiesta legittima. Ma come è possibile aggirare gli algoritmi di Machine Learning?
Advertising
Occorre sapere che la maggior parte dei WAF open source, ma spesso anche quelli proprietari, si basano su un set di regole chiamato Core Rule Set (CRS), sviluppato da Open Web Application Security Project (OWASP). OWASP ha anche sviluppato un WAF open source, ModSecurity, che è spesso integrato in altri sistemi. In pratica la maggior parte dei sistemi di detection di SQLi si basa sul CRS. Ma siamo sicuri che ciò sia un bene?
La risposta sembra essere negativa. Secondo le risultanze di alcuni test le regole CRS portano in alcuni casi ad avere un elevato numero di falsi positivi, in pratica richieste legittime vengono scambiate per attacchi di tipo SQLi, provocando disservizio. Inoltre ModSecurity è altamente vulnerabile a attacchi di tipo Adversarial.
Ma come è possibile difendersi da questo tipo di attacco?
Per cercare di risolvere questi problemi sono stati seguiti diversi approcci tra cui quello conosciuto come AdvModSec, che consiste nell’addestrare il modello ML agli attacchi di tipo Adversarial, ovvero a riconoscere le varianti di un attacco SQLi. Il nuovo modello così addestrato sarà capace di riconoscere gli attacchi SQLi e loro varianti e di ridurre il numero di falsi positivi, avendo in definitiva un sistema di detection più efficace.
📢 Resta aggiornatoTi è piaciuto questo articolo? Rimani sempre informato seguendoci su Google Discover (scorri in basso e clicca segui) e su 🔔 Google News. Ne stiamo anche discutendo sui nostri social: 💼 LinkedIn, 📘 Facebook e 📸 Instagram. Hai una notizia o un approfondimento da segnalarci? ✉️ Scrivici
Presidente di SICYNT -Società Italiana per lo sviluppo della cultura cyber e delle nuove tecnologie. Appassionato di nuove tecnologie, giornalismo e strategia. Autore di numerosi articoli, autore del libro "Il dominio Cyber". Coordinatore della rubrica cyber di Difesa Online. Socio del Centro Studi privacy e nuove tecnologie, del Centro Studi Esercito e di DeComponendisCifris. Colonnello dell'Esercito in riserva.
Ritorna lunedì 18 e martedì 19 maggio la Red Hot Cyber Conference 2026, l’evento gratuito creato dalla community di Red Hot Cyber, che si terrà a Roma in Via Bari 18, presso il Teatro Italia. L’iniziativa è pensata per promuovere la cultura della sicurezza informatica, dell’innovazione digitale e della consapevolezza del rischio cyber. Rappresenta un punto di incontro tra professionisti, studenti, aziende e appassionati del settore, offrendo contenuti tecnici, workshop e momenti di confronto ad alto valore formativo.
L’edizione 2026 si svolgerà a Roma nelle giornate del 18 e 19 maggio presso il Teatro Italia e includerà attività formative, sessioni pratiche e la tradizionale Capture The Flag. L’evento è completamente gratuito, ma la partecipazione è subordinata a registrazione obbligatoria tramite i canali ufficiali, al fine di garantire una corretta organizzazione e gestione degli accessi.
Le iscrizioni saranno disponibili a partire dal 16 marzo 2026 attraverso la piattaforma Eventbrite, dove sarà possibile registrarsi ai diversi percorsi dell’evento: workshop, conferenza principale e competizione CTF. I link ufficiali di registrazione saranno pubblicati sui canali di Red Hot Cyber e costituiranno l’unico punto valido per la prenotazione dei posti all’evento.