1
Aflați dacă baza de date este vulnerabilă. Pentru aceasta, va trebui să știți un pic de SQL. Deschideți ecranul de conectare a bazei de date în orice browser web și tastați ` (citate simple) în câmpul cu numele de utilizator. Faceți clic pe butonul pentru a intra și a vedea dacă apare o eroare similară cu "Excepție SQL: sirul citat neterminat terminat" sau "caracter nevalid". Dacă răspunsul este da la oricare dintre erori, banca este susceptibilă la injectarea de cod.
2
Aflați numărul de coloane din bancă. Reveniți la ecranul de conectare sau mergeți la orice pagină care se termină cu "id =" sau "catid =". Faceți clic pe bara de adrese a browserului. La sfârșitul adresei, dați un spațiu și adăugați următorul cod: ordonați după 1
și apăsați ⌅ Introduceți. Înlocuiți 1 până la 2 și apăsați ⌅ Introduceți din nou. Continuați să măriți numărul până când veți obține o eroare. Numărul total de coloane va fi egal cu numărul introdus înainte de eroare.
3
Aflați care dintre coloane acceptă interogări. În bara de adrese, schimbați catid = 1
sau id = 1
la catid = -1
sau id = -1
. Dă un spațiu și tip: uniune selectată 1,2,3,4,5,6
. Este important ca numerele să conțină până la numărul maxim de coloane și să fie separate prin virgule. În exemplul anterior, numărul total de coloane din baza de date a fost 6. Apăsați ⌅ Introduceți, rezultatul se va potrivi cu numărul de coloane care acceptă interogări.
4
Injectați SQL în coloane vulnerabile. De exemplu, pentru a cunoaște numele actualului utilizator conectat în baza de date, testați în coloana 2: ștergeți tot ce este scris după id = 1 în bara de adrese a browserului și dați-i un spațiu. Apoi introduceți: union select 1, concat (user ()), 3,4,5,6-
. Apăsați pe ⌅ Introduceți și apoi va apărea numele de utilizator. Introduceți orice cod SQL dorit în bara de adrese și obțineți rezultatele dorite, cum ar fi o listă cu toți utilizatorii și parolele înregistrate în baza de date, de exemplu (amintiți-vă că parolele trebuie să fie criptate, deci nu vor fi utile).