SQL injection

exploits_of_a_mom Fonte immagine: xkcd.com

Nonostante dovrebbe essere scontato l’ escape degli input degli utenti nelle applicazioni che utilizzano SQL qualche inconveniente sembra comunque ancora esserci

Il problema e’ noto, ma nonostante questo, continuano a proliferare exploit basati sulla SQL injection.

Questa tecnica permette di eseguire arbitrariamente query che non dovrebbero essere eseguite sui database che utilizzano SQL. E sufficiente confezionare una stringa ad hoc da inserire all’ interno dei vari form presenti su internet che effettuano operazioni, anche teoricamente innoque come un login o una ricerca, e il gioco e’ fatto.

In pratica le applicazioni affette da questa vulnerabilita’ potrebbero vedersi cancellare delle tabelle o anche interi database o peggio ancora potrebbero consentire l’ accesso non autorizzato a informazioni che dovrebbero essere riservate.

Anche se pensiamo di essere al sicuro e’ possibile che non sia cosi, in particolare mi riferisco a chi utilizza i vari CMS, CRM, PIM, MAP, ERP, AMS ecc… i cui core sono tutti sicuri sotto questo punto di vista (diciamo quasi tutti), ma i cui plug-in spesso non lo sono altrettanto. Questa situazione, unita al fatto che spesso e’ facile risalire allo schema dei database utilizzati, potrebbe diventare una miscela preoccupante.

Una rapida ricerca su Exploit-db ci mostra come siano state trovate vulnerabilita’ anche recenti in quasi tutti i CMS (e via discorrendo) piu’ utilizzati