SQL Injection
Descrizione
L’SQL injection è una tecnica di attacco che rientra nella categoria code injection e sfrutta difetti di programmazione di applicazioni web che utilizzano database relazionali interrogabili tramite Structured Query Language (SQL) per la gestione dei dati necessari al proprio funzionamento.
Quando l’applicazione costruisce le query a partire dagli input forniti dall’utente senza che questi vengano appropriatamente validati prima di essere inclusi nella richiesta inviata al database, quest’ultimo è potenzialmente vulnerabile a un attacco SQL injection che potrebbe consentire all’attaccante di leggere, modificare o cancellare i dati memorizzati, nonché di effettuare azioni solitamente consentite al solo amministrazione e, in alcuni casi, di eseguire comandi sul sistema operativo sottostante.
Ciò che rende l’SQL injection particolarmente pericolosa è che non richiede l’uso di strumenti particolari, è infatti sufficiente un qualsiasi browser tra quelli comunemente adoperati per la navigazione sul web.
Prevenzione
Utilizzare le best-practice OWASP in fase di sviluppo per prevenire l’utilizzo di questa tecnica.
Risposta
Strumenti di Intrusion Detection/Prevention (IDS/IPS), Web Application Firewall (WAF) possono aiutare a identificare, prevenire e interrompere un attacco di questo tipo prima che possa generare danni irreparabili.
Processi e procedure di Disaster Recovery e Business Continuity possono garantire il corretto ripristino dei dati e la continuità operativa a seguito di una violazione andata a buon fine.