0% menganggap dokumen ini bermanfaat (0 suara)
43 tayangan10 halaman

Panduan Praktis Menggunakan SQLMap

Dokumen ini membahas penggunaan SQLMap, alat open-source untuk mendeteksi dan mengeksploitasi SQL Injection pada aplikasi web. Mahasiswa diajarkan cara mengoperasikan SQLMap, termasuk perintah dasar, fitur utama, dan praktik penggunaan dengan tujuan untuk mengidentifikasi kerentanan dan mengambil data dari database. Selain itu, penekanan pada sikap etis dalam penggunaan alat ini juga disampaikan.
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
43 tayangan10 halaman

Panduan Praktis Menggunakan SQLMap

Dokumen ini membahas penggunaan SQLMap, alat open-source untuk mendeteksi dan mengeksploitasi SQL Injection pada aplikasi web. Mahasiswa diajarkan cara mengoperasikan SQLMap, termasuk perintah dasar, fitur utama, dan praktik penggunaan dengan tujuan untuk mengidentifikasi kerentanan dan mengambil data dari database. Selain itu, penekanan pada sikap etis dalam penggunaan alat ini juga disampaikan.
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

KODE UNIT J.62090.

0
JUDUL UNIT SQL Map
DISUSUN Drs. Koes Wiyatmoko, [Link]
Riko Iman Decamarta, SST.

MODUL PRAKTIK 1. SQL MAP


TUJUAN PEMBELAJARAN DAN CAPAIAN PEMBELAJARAN –
MATERI SQLMAP NO. TUJUAN PEMBELAJARAN CAPAIAN
PEMBELAJARAN
mengeksploitasi SQL terhadap SQL Injection
1 2 Injection secara aman
Mahasiswa mampu
Menampilkan dan
menjalankan perintah
menganalisis struktur
dasar SQLMap dan
database dari hasil
3 4 5 membaca hasil
eksploitasi yang berhasil output-nya
Menerapkan SQLMap
dengan opsi lanjutan Mahasiswa dapat
Memahami konsep seperti pengaturan risk, menggunakan opsi
dasar SQL Injection dan level, dan tamper script SQLMap seperti --dbs,
peran SQLMap sebagai Mahasiswa mampu --tables, dan -- dump
alat otomatisasi menjelaskan apa itu untuk menggali informasi
Mengidentifikasi SQL Injection dan
Mahasiswa mampu
parameter aplikasi web bagaimana SQLMap menggunakan opsi
yang rentan terhadap digunakan untuk lanjutan SQLMap untuk
SQL Injection mengujinya
bypass WAF atau
Mengoperasikan Mahasiswa dapat memperluas cakupan
SQLMap untuk menentukan parameter injeksi
mendeteksi dan URL atau form yang
mungkin rentan

6 Menunjukkan sikap etis Mahasiswa menyadari pentingnya


dalam menggunakan alat penggunaan SQLMap hanya pada
pengujian keamanan sistem yang sah dan dengan izin
tertulis

1.2. PENDAHULUAN SQLMAP

1.2.1. Apa itu SQLMap?


SQLMap adalah alat open-source yang digunakan untuk
mengotomatisasi proses deteksi dan eksploitasi SQL Injection pada
aplikasi web. SQLMap mampu :

a. Menemukan celah SQLi


b. Mengambil database, tabel, dan data
c. Mengeksekusi perintah OS (jika memungkinkan)
d. Menangani WAF (Web Application Firewall) dengan tamper script
1.2.2. Fitur Utama SQLMap.
a. Deteksi otomatis SQL Injection
b. Dump database & table

c. Eksekusi perintah OS (jika memungkinkan)


d. Bypass WAF dengan tamper script
e. Support GET, POST, cookie, header, dll.

1.2.3. Perintah Dasar SQLMap.


Perintah untuk melihat semua opsi yang tersedia di SQLMap :

Gambar 1. Format dasar perintah SQLMap

Format praktik :

Gambar 2. Scan dengan SQLMap.

Kemudian untuk mengetahui opsi perintah di Sqlmap –help, perintahnya


sebagai berikut :

Gambar 3. Mengetahui Opsi Command SQLMap

Hasil dari perintah diatas :


Gambar 4. Hasil Opsi Command SQLMap

Tabel 1. Keterangan arti Opsi Command SQLMap

Opsi Arti

-u URL target yang akan diuji


--data Data POST jika injection ada di form (misalnya login) --cookie
Menyisipkan cookie (jika dibutuhkan untuk login/session) --dbs
Menampilkan daftar database
--tables Menampilkan tabel dalam database tertentu
--columns Menampilkan kolom dalam tabel tertentu
--dump Mengambil (dump) data dari tabel tertentu
--batch Menjawab semua prompt secara otomatis (non-interaktif) --risk
dan --level Mengatur tingkat intensitas dan agresivitas serangan --proxy
Mengarahkan request melalui proxy seperti Burp Suite --tamper
Menggunakan tamper script untuk menghindari deteksi WAF
--technique Menentukan teknik injeksi (B, E, U, S, T, Q)

1.3. PRAKTIK :

1.3.1. Gunakan target legal:


[Link]

1.3.2. Salah satu URL vulnerable didalamnya ditemukan vulner / kerentanan


seperti berikut :

[Link]
Untuk menemukan vulner / kerentanan ada beberapa tehnik
penggunaan tool OWASP Zap, Hackbar, dan beberapa lagi yang tidak
bisa saya sebutkan di sini. Namun diantara yang paling simple seperti
berikut :

Klik salah satu


isi table artists

Gambar 5. Target web

Gambar 6. Tampilan data astists

PENJELASAN Gambar 6.:

Pada gambar tersebut di URL terlihat pada lingkaran merah


….?artist=1, ada kecenderungan jika url seperti itu terdapat vulner /
kerentanan, dan untuk melakukan test, tambahkan tanda petik ‘ setelah
….?artist=1’.

Gambar berikut hasil dari url setelah ditambah petik ‘ , dan muncul
kalimat seperti berikut :
Gambar 7. Indikasi Error

1.3.3. Demo Penggunaan SQLMap

a. Langkah 1 : Mengidentifikasi apakah parameter artist rentan terhadap


SQL Injection.

Target : [Link]

Data yang didapat dari Gambar 5, 6 dan 7 maka kita simpulkan url
berpotensi menjadi celah kerentanan kita jalankan sqlmap dan kita
paste kan url tersebut seperti Gambar 8, yang merupakan perintah
untuk mengidentifikasi apakah parameter artist rentan terhadap SQL
Injection.

Gambar 8. Identifikasi kerentanan


Penjelasan gambar 8 :

i. -u : Menunjukkan URL target.

ii. artist=1 : Parameter yang diuji.


iii. –batch : Mode otomatis (jawaban default digunakan).
Hasil dari command diatas, SQLMap menyisipkan payload ke
parameter artist, seperti artist=-1 AND 1=1, dan beberapa payload
seperti terlihat di Gambar 9. Ini menunjukkan teknik SQLMap berhasil
menguji, menemukan dan mengkonfirmasi kerentanannya.

Gambar 9. Payload SQLMap

b. Langkah 2 : Menemukan Database.


Ketikan #SQLMap………… dst seperti Digambar 10..

Gambar 10. Scan untuk menemukan database.


Pada gambar sepuluh terlihat ada 2 (dua) database ditemukan yaitu :
1. acuart dan
2. information_schema.

c. Melihat Daftar Tabel dalam Database


Database-nya bernama acuart, maka sintax-nya seperti berikut :
Gambar 11. Scan Tabel

d. Melihat Kolom dalam Tabel


Dari table yang ada terlihat ada nama tabel users, sintax berikutnya :

Gambar 12. Scan mendapatkan isi Field Tabel users


e. Dump Data dari Tabel
Definisi:
Dump merupakan proses mengambil dan menampilkan isi data
sebenarnya dari suatu tabel dalam suatu database.
Dalam konteks SQLMap, dump berarti:
Menyuruh SQLMap mengekstrak dan menampilkan semua baris
dan kolom dari tabel tertentu ke layar (dan ke file log), sehingga
kita bisa melihat isi asli dari database target.
Gambar 13. Hasil Dump

PENJELASAN Gambar 13. Telah ditemukan satu record yang berisi


password yang tidak di hash dimana sebenarnya masih ada password
yang lain namun karena di hash maka SQLMap tidak bisa mela

6 ࠿ . Menambah Detail Serangan (Risk & Level)

bash
SalinEdit
sqlmap -u "[Link] --risk=3 --level=5
--batch  --risk=3: Tes yang berisiko tinggi (misalnya menggunakan fungsi
waktu)  --level=5: Cakupan parameter lebih luas (bisa POST, header, dll)

⭱⭲⭳⭴⭵ 7. Deteksi WAF


bash
SalinEdit

sqlmap -u "[Link] --identify-waf

8 ࡞࡟ࡠࡡ. Jika Terlindungi WAF (Tamper Script)

bash
SalinEdit
sqlmap -u "[Link] --
tamper=between,randomcase --batch

 Tamper script memodifikasi payload untuk menghindari deteksi oleh WAF.


ᨾᨿᩀᩁᩂ Tips Mengajar & Latihan

 Pastikan peserta memahami konsep parameter GET/POST dan SQL Injection


manual terlebih dahulu.

 Gunakantools seperti Burp Suite untuk mendemonstrasikan bagaimana


SQLMap bekerja di belakang layar.

 Gunakan proxy dan verbose output untuk melihat semua request

SQLMap: bash

SalinEdit

sqlmap -u "[Link] -v 3 --
proxy="[Link]

Kesimpulan ‫ݝ‍ݜ‍‍ݛݚ‬

Tujuan Perintah

Scan sederhana sqlmap -u "URL" --batch

Daftar database --dbs

Daftar tabel -D nama_db --tables

Daftar kolom -D nama_db -T nama_tabel --columns

Ambil data --dump

Bypass WAF --tamper=nama_script

Deteksi WAF --identify-waf

1.1. VULNERABILITY SCANNING

Langkah awal untuk melakukan scanning/ mengecek apa web target apakah
vulnerable terhadap SQL Injection atau tidak. Perintah yang gunakan Jadi pertama
kita akan memasukkan perintah "sqlmap -u [Link] --dbs". Di
sini "sqlmap -u [Link] adalah untuk mengecek Uniform
Resource Locator (URL) target apakah bisa di injeksi, sedangkan --dbs untuk
mendapatkan nama database yang tersedia.
1.2.

Anda mungkin juga menyukai