Filehost.ro - gazduire fisiere
Danutz
Bine ati venit !!! by Danutz Pe acest forum puteti gasi tot ce va intereseaza,aici putem vorbi despre orice !!!
Nou pe simpatie:
BrianaS
Femeie
23 ani
Bucuresti
cauta Barbat
26 - 57 ani
DanutzReguliInregistrareLoginPozeNu sunteti logat. Lista Forumurilor Pe Tematici
Danutz / ---===Hacking-ul nostru cel de toate zilele===--- /

Sql injection[ tutorial nr 1]

Pagini: 1  
#1
danutz25
Administrator
Postari: 653
[CENTER][SIZE=100]SQL INJECTION TECHNIQUE[/SIZE][/CENTER]

*LEGENDA:*
1.Acesta este primul dintr-un sir de tutoriale unde va voi prezenta cat mai in amnunt tehnica de injectare SQL  de la "basic" pana la "advanced".
2.Tutorialul va fi insotit de poze si explicatii, iar la sfarsitul fiecarei parti va fi atasat cate un tutorial video cu exmplele facute in tutorialul cu poze.
3.Tot ceea ce va prezint in aceste tutoriale este doar in scop informativ, pentru cultura voastra generala, eu nu pot fi acuzat pentru viitoarele dumneavoastra nepalcerii in legatura cu aplicarea acestei metode.
4.Primul tutorial va prezenta metoda "broute force"(forta bruta) de SQL injection, urmatorele tutoriale vor prezenta si metode le de gasire a acestei vulnerabilitati, dar mai intai cateva cuvinte despre aceasta Vulnerabilitate.

Tehnica SQL injection da posibilitatea unui atacator sa execute comenzi SQL neautorizate porfitand de oportunitati neortodoxe de intrare in aplicatiile web construind interogari SQL dinamice.
Acesta devine posibil deoarece PHP combina sirurile interogarilor MYSQL pe care le setezi cu variabila inainte pentru ca cineva sa poata adauga o a doua interogare sau schimba interogarea ta pentru a le oferi informatii sau acces pe care nu ar trebui sa il aiba. Cele mai obisnuite dintre aceste intrari includ apostrofuri unescaped in declaratiile SQL.

Nu are rost sa adaog mai multe deoarece se pot gasii diverse surse de unde sa va informati unde si cand apare sql injection, sau o sa prezint intr-un alt tutorial detalii.

O sa va prezint un site gasit de mine care este vulnerabil la Sql injection:

Code:

http://www.furtherfield.org


Vulnerabilitatea apare aici :

Code:

http://www.furtherfield.org/admin/cast_fr.php?ID=1


Voi incerca sa va prezint pasii pentru metoda "brute force".

1.Verificarea daca apare Sql injection! Cum procedam?
R.Incercam sa gasim un alt "ID" care sa ne genereze o eroare a bazei de date, putem folosi: "-1","-2","666","9999999". Mai putem folosi si " 'xxx " sau " ' OR 1=1" sau " id(curent) and 1=1" sau multe altele

Deci la treaba :

Dupa cum vedeti dupa adaugarea " ' " a aparut eroarea........bun!

2.Gasirea numarului de coloane a tabelului. Cum facem?
R.Vom folosi o functie SQL "Union" (forma:union all select (nr)coloane from table_name )

Dupa cum vedeti in poza trebuie sa incercam manual sa gasim numarul de coloane a tabelului.
Pana nu vom gasi numarul exact ne va aparea aceeasi eroare ca si cea subliniata in poza.
Ia sa vedem.....1,2,3,4,5,6,7,8,9,10,11,12,13,14.....Bingo l-am gasit nr de coloane este 14, cum ne dam seama cand am gasit nr de coloane? simplu vom vedea afisate in pagenina numerele unor coloane, ex "2", "3" ,"10", etc.

3.Am gasit numarul de coloane acum sa gasim si tabelul de unde sa extragem "User" si Pasdword", cum facem asta?
R.Folosim imaginatia si cautam tabelul, cateva nume de tabele folosite mai des "Users,User,admins,admin,webusers,webuser,login,logins, si multe altele.
In caz ca veti gresi numele tabelului veti fi avertizat de o eroare ca numele acelui tabel nu exista in baza de date.

Code:

http://www.furtherfield.org/admin/cast_ ... /**/numele tabelului/*



ok deci am ghicit numele tabelului care este "Users", sa zicem ca am fi scris "users" atunci ar fi aparut ceva de genul :

Code:

Invalid query : Table 'test.users' doesn't exist select broadcast.ID,title,message,broadcast.pic_id,width,height,pic_type.type,broadcast.url,unix_timestamp(date_posted),forename,surname,display_name,broadcast.user_id,summary from broadcast left join Pictures on Pictures.id=broadcast.pic_id left join pic_type on Pictures.type=pic_type.ID left join Users on Users.user_id=broadcast.user_ID where broadcast.ID=1 union/**/all/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14/**/from/**/users/*


4.Acum vom cauta numele coloanei cu datele( username si password)! Cum facem asta?
R.Prin incercarii. De obicei numele coloanelor sunt "username/user/" si "password/pass".
ATENTIE!!!::Numele coloanei trebuie scris in locul coloanei care va aparut in pagina , ex:"2","11".

Dupa cum vedeti am reusit Username + hash

Video Demonstration

_______________________________________
Deci asa se fac banii....da clik sa vezi


 
   
Pagini: 1  
Mergi la