Se avete tre minuti, provo a spiegarvelo io, in modo semplice.
Partiamo dal nome: SQLi, SQL Injection o, per esteso (in una delle possibili interpretazioni), "Structured Query Language Injection" è un tipo di attacco nei confronti del database di un'applicazione web che consiste nella esecuzione di una interrogazione malevola. Per completezza aggiungo che SQL è il linguaggio standard impiegato per interagire un database relazionale.
Facciamo un esempio pratico. Pensate ad una pagina web di un sito di commercio online, in cui generalmente è possibile eseguire la ricerca e selezione di un prodotto da acquistare. Spesso nella casella di ricerca è possibile inserire delle stringhe di testo che includono dei simboli o dei caratteri speciali. Ebbene alcuni caratteri a noi possono sembrare innocui ma ciò non vale per il database che li interpreta in tutt'altro modo.
Cosa può accadere se si è vittima di un attacco SQLi?
Purtroppo può accadere di tutto.
Se i controlli sulle possibili interrogazioni del database sono sbagliati (o come capita ancora di vedere, inesistenti) è possibile che i dati contenuti al suo interno vengano modificati, cancellati, copiati o anche cifrati. Passare poi dal database ad altre aree del sistema non è difficile per cui un attaccante dotato di tempo e un minimo di risorse e conoscenze informatiche può fare veramente molti danni.
SQLi è uno degli attacchi più conosciuti e che ancora oggi funziona, principalmente a causa della cattiva programmazione delle pagine web in cui, come già accennato, non sono eseguiti i corretti controlli su ciò che un utente del sito può inserire come richiesta.
Questo tipo di attacco è noto pubblicamente almeno dal 1998, grazie all'articolo "NT Web Technology Vulnerabilities" uscito su Phrack a firma di Rain Forest Puppy, pseudonimo di Jeff Forristal, hacker ed esperto di sicurezza mondiale.
Alessandro Rugolo
Per approfondire:
- http://phrack.org/issues/54/8.html
- https://www.esecurityplanet.com/networks/how-was-sql-injection-discovered/
- https://owasp.org/www-community/attacks/SQL_Injection
Nessun commento:
Posta un commento