Retrieving Hidden Data

Author: Anonputraid

Saat Pengguna Membuka Aplikasi Belanja, Kita Akan Menemukan URL Seperti Ini:

Pada Khasus Ini Aplikasi Mungkin Membuat Query SQL Mengambil Data Product:

 SELECT * FROM products WHERE category = 'Gifts' AND released = 1

Penjelasan Query SQL:

  • Maksud Dari Simbol (*) Adalah Tampilkan Data Secara Detail

  • From Table Dengan Nama products.

  • Where Category Nya Adalah 'Gifts'

  • And Released = 1: Dan Tampilkan Satu Data

Pembatasan released = 1digunakan untuk menyembunyikan produk yang tidak dirilis. Untuk produk yang belum dirilis, mungkin released = 0.

Jika Aplikasi Tersebut Tidak Menggunakan Filter Terhadap Serangan SQL-Injection Maka Kita Bisa Menggunakan Teknik Berikut Dengan Menambahkan '-- Pada Akhir URL

https://insecure-website.com/products?category=Gifts'--

Ini menghasilkan kueri SQL:

 SELECT * FROM products WHERE category = 'Gifts'--' AND released = 1

Simbol Double Link ( -- ) Adalah Indikator Komentar Pada SQL, Dan Ini Berarti Ketika Menggunaka Simbol Double Link Ini Query Setelah Nya Tidak Akan Dibaca Oleh Server. Sehingga Tidak Lagi Menyertakan AND released = 1.

Penjelasan Lebih Jauh Lagi, Penyerang Bisa Menampilkan Semua Isi Pada Column Table Dengan Cara Seperti Ini:

https://insecure-website.com/products?category=Gifts'+OR+1=1--

Itu Menghasilkan Query SQL:

  SELECT * FROM products WHERE category = 'Gifts' OR 1=1 --' AND released = 1

Jika Dikirim Hasil Query Tersebut Akan Mengembalikan Semua Item Yang Berkategori, 'Gifts' Karna 1 itu Sama Dengan 1 Dan Hasil Nya Adalah True, Jika Bernilai True, Maka Data Akan Ditampilkan.

Anda Bisa Latihan Disini:

Last updated

Was this helpful?