Tutorial SQL Injection pada Website Localhost
Artikel kali ini akan membahas tentang
tutorial melakukan serangan SQL Injection terhadap sebuah website. Tapi,
sebelumnya mari Kita tahu dulu apa sih sebenarnya SQL Injection itu?
SQL Injection adalah teknik eksploitasi
dengan cara memodifikasi perintah sql pada form input
aplikasi yang memungkinkan penyerang untuk dapat mengirimkan sintaks ke
database aplikasi. SQL Injection juga dapat didefinisikan sebagai
teknik eksploitasi celah keamanan pada layer database untuk
mendapatkan query data pada sebuah aplikasi. Jadi, dengan menggunakan
SQL Injection, Kita bisa mengetahui dan membongkar isi database yang digunakan
oleh website tersebut..
EITSSS, TAPI TUTORIAL INI DIGUNAKAN
SEBAGAIMANA MESTINYA YAH.. DAN SANGAT TIDAK DIPERKENANKAN MELAKUKAN SERANGAN
INI UNTUK KEGIATAN YANG TIDAK TERPUJI.. HMM, IT’S LIKE MENIPU, MENCURI, DKK..
Okayy, langsung sajaaa..
1. Website target yang akan kami gunakan pada praktikum ini adalah sebuah website yang dapat berjalan di localhost. Adapun tampilannya adalah sebagai berikut.
Gambar 1. Tampilan halaman login
Website ini menggunakan database dengan
nama Penduduk dan untuk data-data login serta password yang digunakan untuk
kebutuhan login tersimpan di dalam tabel admin. Apabila username dan password
benar maka website akan berpindah ke halaman admin. Berikut adalah halaman
admin dari website tersebut dengan menggunakan username : kelompok3 dan password
: kitakelompok3 sesuai dengan yang terdapat dalam database.
Gambar 2. Tampilan halaman admin
Gambar 3. Database table admin
- Menggunakan username yang benar, password
salah
Apabila kita mau masuk ke dalam halaman
admin akan tetapi kita hanya mengetahui username dari admin tersebut dan lupa
atau tidak tahu tentang password nya. Hal ini dapat dilakukan dengan cara
mengetikkan pada kolom username kelompok3’-- dan memasukkan password yang salah. Seperti yang
terlihat pada capture di bawah ini.
Hasilnnya adalah akan muncul halaman admin
sama seperti ketika kita login menggunakan username dan password yang benar.
- Menggunakan username dan password yang
salah
Selanjutnya, mari Kita melakukan serangan
dengan menggunakan kondisi yang kedua yaitu dengan memasukkan username dan
password yang salah. Hal ini dapat dilakukan dengan mengetikkan sembarang
karakter di kolom username dan kemudian dilanjut dengan syntax ’OR 1=1 -- . Serta
memasukkan password yang salah pula. Detailnya dapat dilihat pada gambar
berikut.
Hasilnya adalah akan muncul halaman admin sama seperti ketika kita login menggunakan username dan password yang benar.
Sebagai web developer tentunya kita tidak
menginginkan hal tersebut terjadi, kann. Oleh karena itu, untuk mencegah
terjadinya serangan sql injection tersebut maka perlu ditambahkan syntax
mysqli_real_escape_string() untuk melakukan blok terhadap serangan sql
injection. Seperti yang ditunjukkan pada gambar berikut.
Setelah melakukan blok terhadap serangan
sql injection maka semua syntax yang digunakan sebelumnya tidak akan berfungsi.
User yang bisa masuk ke dalam halaman admin hanyalah betul-betul user admin
yang memasukkan username dan password yang benar sesuai dengan database.











Komentar
Posting Komentar