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

2. Selanjutnya, untuk melakukan serangan sql injection diberikan 2 kondisi. Yakni, menggunakan username yang benar tetapi password salah dan menggunakan username serta password yang salah.

- 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.

Begitulah gambaran mengenai serangan SQL Injection dan cara mengantisipasinya. Dengan melakukan serangan SQL injection, kita bisa membongkar dan mengobrak-abrik isi dari database sehingga hal ini SANGAT TIDAK DISARANKAN UNTUK DIPERGUNAKAN TIDAK SEBAGAIMANA MESTINYA. Karena kita ketahui bersama bahwa data merupakan hal urgen yang tentunya privasi. Tutorial ini dibuat untuk memenuhi tugas matakuliah Cyber Security. Sarannya sih cukup diketahui saja karena mengambil sesuatu yang bukan merupakan hak milik kita merupakan hal yang tercela.

Untuk lebih jelasnya, berikut video tutorial SQL Injection pada Website :




Komentar

Postingan Populer