Cyber: minacce e vulnerabilità degli applicativi web

La pervasività degli attacchi Sql injection

farmacia di turno

Una delle principali vulnerabilità degli applicativi web è rappresentata dalla sql (structured query language) injection attack. Si tratta di una tecnica di hacking pericolosa e pervasiva a cui può conseguire, nei casi più gravi, il pieno controllo del server da parte dell’attaccante.

Notorie sono le evidenze di questa tipologia di attacco (WordPress, Joomla, Yahoo, US Election Commission, Dipartimento della Funzione Pubblica, Playstation Network) ed ancora oggi si stima che una discreta percentuale degli applicativi web presenta una elevata vulnerabilità di questo genere.

Le più diffuse web application e/o blog utilizzano un database costituito da tabelle in cui sono inseriti dati. La query è tecnicamente un’interrogazione da parte di un utente di un database, strutturato tipicamente secondo il modello relazionale, che serve per compiere determinate operazioni sui dati contenuti nelle tabelle (selezione, inserimento, cancellazione dati, aggiornamento ecc.). 

Una query utilizza generalmente un linguaggio di interrogazione interpretato che è rappresentato dallo standard SQL (Structured Query Language) nei suoi sottolinguaggi Data Query Language e Data Manipulation Language, per renderla più comprensibile al Database management system (DBMS). La query è dunque una istruzione in SQL (Structured Query Language), che serve per gestire l’interazione con i più comuni tipi di database relazionali. 

Esistono varianti di SQL a seconda del database utilizzato, ma in linea generale, si basano tutte sugli stessi principi. L’attacco Sql injection sfrutta l’inserimento e l’esecuzione di codice Sql non previsto all’interno di una pagina web dinamica. A differenza di molte tecniche di hacking, le Sql Injection non richiedono particolari tools ma solo un collegamento alla rete internet ed un qualunque browser web.

La tecnica sfrutta, in buona sostanza, la possibilità di poter inviare ad un server tramite una richiesta HTTP (HyperText Transfer Protocol) uno o più parametri che saranno elaborati dal server medesimo per fornire all’utente abusivo il tipo di servizio desiderato. 

Introducendo come parametri dei frammenti di codice Sql è possibile modificare la query consentendo un accesso non autorizzato al database con la conseguenziale acquisizione abusiva dei dati ivi contenuti (nomi, cognomi , indirizzi email, numeri di carte di credito, user id e password , etc.) degli utenti registrati al sito ed entrare in aree private del sito stesso. 

Il fenomeno delle Sql Injection non riguarda l’architettura web in particolare, ma interessa qualunque tecnologia utilizzata per le pagine web dinamiche che si interfacciano con dei database. Considerata la pervasività dell’attacco, quali sono le tecniche di prevenzione e le misure di mitigazione da mettere in campo?

Ne abbiamo parlato con Giorgio Perego, responsabile dei progetti ICT locali per le tre divisioni di vendita della multinazionale tedesca B. Braun

“Per prevenire un attacco sql injection ovvero mitigarne la minaccia – ci spiega – la migliore tecnica difensiva consiste nel mettere in campo rigorosi controlli su ciò che può essere digitato in un campo di immissione dati in modo che i comandi di programmazione vengano rifiutati. Dovrebbero essere condotte anche revisioni del codice per garantire che tali modifiche siano in atto e che non vi siano carenze intrinseche nel modo in cui il codice è scritto.  Esistono software per testare tali punti deboli. Il linguaggio di query strutturato si verifica a livello di applicazione.  La maggior parte degli IPS (intrusion prevention systems) rileverà almeno i set di base di SQL injection e sarà in grado di fermarli”.

A fronte delle superiori considerazioni, è evidente che l’information security manager non potrà non misurarsi con la minaccia di un attacco sql injection che ben avrà precedentemente valutato nel risk assessment.

A tal fine è di fondamentale importanza che l’attività di security management si indirizzi verso l’implementazione di standard di codifica sicuri e la “peer review” (reviewing code) che come parte del SDLC (System Development Life Cycle), costituiscono validi ed efficaci controlli risolutivi degli attacchi sql injection.

Davide Maniscalco

Avvocato Cassazionista, con formazione giuridico-aziendale, ha consolidato la propria esperienza professionale prevalentemente nel settore dei carburanti e delle energie. Ha assunto ruoli di alta direzione in Gruppi societari del settore wholesale and retail trading, logistic, transport & management. Ha maturato una significativa esperienza in diritto commerciale e societario, nonché nella contrattualistica di impresa, occupandosi in azienda della gestione del capitale umano e delle relazioni sindacali. E’ Of Counsel dello Studio Viola di Palermo con cui collabora nell’ambito dell’innovativo BID Department per lo sviluppo del commercio internazionale delle imprese, negli uffici di rappresentanza di Milano e New York. Nel corso dell’esperienza professionale ha approfondito il rapporto tra diritto e tecnologie della società dell’informazione ed ha poi rivolto particolare attenzione alle materie della information security, acquisendo competenze trasversali in informatica giuridica, governance digitale, cybersecurity e business resilience. Certified functional continuity professional (CFCP) DRII e crisis manager. Referente territoriale e Docente della Geeks Academy, scuola di alta formazione specialistica e network della formazione in cybersecurity, digital forensics e data analysis. Professionista della Privacy iscritto negli elenchi dei professionisti dell’Associazione Anorc Professioni*, per la quale è Referente Territoriale. Professionista della Digitalizzazione documentale e della Privacy, con master di primo livello conseguito presso l’Università UniTelma Sapienza di Roma. Membro del Team D&L Net dello Studio Legale Lisi**, a cui aderisce come specialista della Privacy. Membro del consiglio direttivo dell’Associazione Confcommercio Professioni Palermo, che aderisce alla Confcommercio di Palermo. Business Coach e Licensed NLP Master Practitioner iscritto nell’elenco tenuto dall’Associazione Assocoaching I° livello Disaster Manager – Assodima ______________________ ____________________________ * ANORC Professioni è un’associazione professionale, indipendente e senza scopo di lucro, iscritta nell'elenco del MISE, che rappresenta i Professionisti della digitalizzazione e i Professionisti della privacy. **Il D&L Net è un Network professionale che in modo multidisciplinare vuole garantire ai Professionisti che aderiscono una crescita sia in termini di competenze, che di attività, nelle materie del diritto dell’informatica e della protezione dei dati personali. Per tali motivi i Professionisti accettano di riconoscersi in questo Network, di mettere a disposizione con spirito collaborativo e proattivo la propria professionalità e di impegnarsi a sviluppare la rete professionale secondo una serie di diritti e doveri condivisi nel Codice che accettano di osservare.

Articoli suggeriti