Difference between revisions of "DVWP"
Onnowpurbo (talk | contribs) (Created page with "Ahh siap — '''DVWP = Damn Vulnerable WordPress'''. DVWP lebih realistis dibanding DVWA untuk latihan WordPress security, karena kamu belajar hal-hal yang sering muncul di p...") |
Onnowpurbo (talk | contribs) |
||
| Line 1: | Line 1: | ||
| − | + | '''DVWP = Damn Vulnerable WordPress'''. | |
DVWP lebih realistis dibanding DVWA untuk latihan WordPress security, karena kamu belajar hal-hal yang sering muncul di pentest WordPress sungguhan: plugin, theme, `/wp-admin`, `/wp-login.php`, `/wp-content/`, XML-RPC, plugin vulnerable, file terbuka, credential lemah, dan salah konfigurasi. | DVWP lebih realistis dibanding DVWA untuk latihan WordPress security, karena kamu belajar hal-hal yang sering muncul di pentest WordPress sungguhan: plugin, theme, `/wp-admin`, `/wp-login.php`, `/wp-content/`, XML-RPC, plugin vulnerable, file terbuka, credential lemah, dan salah konfigurasi. | ||
Latest revision as of 08:21, 4 July 2026
DVWP = Damn Vulnerable WordPress.
DVWP lebih realistis dibanding DVWA untuk latihan WordPress security, karena kamu belajar hal-hal yang sering muncul di pentest WordPress sungguhan: plugin, theme, `/wp-admin`, `/wp-login.php`, `/wp-content/`, XML-RPC, plugin vulnerable, file terbuka, credential lemah, dan salah konfigurasi.
1. Aturan utama: jalankan hanya di lab lokal
Gunakan DVWP hanya di lingkungan sendiri:
Kali Linux = mesin attacker / latihan DVWP WordPress = target vulnerable Network = localhost / host-only / private VM network
Jangan expose DVWP ke internet publik. Karena ini memang sengaja vulnerable.
2. Tujuan awal: pahami struktur WordPress
Sebelum menyerang apa pun, buka websitenya manual dulu dan pahami struktur WordPress:
/wp-login.php → halaman login /wp-admin/ → dashboard admin /wp-content/ → tempat theme, plugin, upload /wp-content/plugins/ → plugin yang terpasang /wp-content/themes/ → theme yang terpasang /xmlrpc.php → endpoint XML-RPC WordPress /wp-json/ → REST API WordPress
Dalam pentest WordPress, banyak celah berasal dari plugin dan theme, bukan hanya dari WordPress core.
3. Recon dasar dari Kali Linux
Misalnya DVWP kamu jalan di:
http://127.0.0.1:31337
Mulai dari cek service:
nmap -sV -p 31337,31338 127.0.0.1
Artinya:
-sV = deteksi service dan versinya -p = scan hanya port tertentu 127.0.0.1 = mesin lokal
Lalu cek response web:
curl -I http://127.0.0.1:31337
Artinya:
-I = hanya tampilkan HTTP header
Ini membiasakan kamu untuk mengamati dulu sebelum langsung pakai tool besar.
4. Gunakan WPScan, tapi jangan bergantung 100% pada tool
WPScan adalah tool utama untuk enumerasi WordPress.
Contoh:
wpscan --url http://127.0.0.1:31337 --enumerate u,p,t
Artinya:
--url = URL target WordPress --enumerate = minta WPScan melakukan enumerasi u = users p = plugins t = themes
Alur belajar yang bagus:
1. Jalankan WPScan 2. Lihat user/plugin/theme yang ditemukan 3. Verifikasi manual lewat browser 4. Cek path plugin di /wp-content/plugins/ 5. Pahami jenis vulnerability-nya 6. Baru coba eksploitasi di lab
Jangan hanya copy-paste exploit. Biasakan bertanya:
Input mana yang vulnerable? Butuh login atau tidak? Impact-nya apa? Buktinya apa? Cara fix-nya bagaimana?
5. Fokus latihan pada plugin
WordPress sering vulnerable karena plugin. Jadi untuk tiap plugin, buat catatan kecil seperti ini:
Plugin: Versi: Vulnerability: Butuh login? ya/tidak Impact: Evidence / bukti: Cara memperbaiki: Referensi:
Ini sangat mirip dengan cara kerja report pentest sungguhan.
6. Attack surface WordPress yang perlu dipahami dulu
Prioritaskan belajar ini:
1. User enumeration 2. Weak/default credentials 3. Vulnerable plugins 4. File upload weakness 5. Directory listing / exposed files 6. XML-RPC abuse 7. REST API exposure 8. phpMyAdmin/adminer exposure 9. wp-config.php atau backup leak 10. Privilege escalation di dalam wp-admin
Penjelasan singkat:
User enumeration mencari username yang valid di WordPress.
Weak/default credentials login dengan password lemah atau default.
Vulnerable plugins plugin lama atau plugin yang punya CVE.
File upload weakness upload file berbahaya karena validasi buruk.
Directory listing folder bisa dibuka dan isinya kelihatan.
Exposed files file sensitif seperti backup, .sql, .zip, .bak, atau config terbuka.
XML-RPC abuse endpoint xmlrpc.php disalahgunakan untuk brute force atau pingback abuse.
REST API exposure informasi user/post/settings terlalu terbuka lewat /wp-json/.
phpMyAdmin/adminer exposure panel database terbuka ke web.
wp-config.php leak file konfigurasi WordPress bocor, bisa berisi credential database.
7. Tool yang bagus untuk latihan DVWP
Tool utama dari Kali:
Browser + Burp Suite
Untuk melihat, intercept, dan memodifikasi HTTP request.
WPScan
Untuk enumerasi WordPress, plugin, theme, user, dan vulnerability.
Nmap
Untuk cek port dan service yang terbuka.
Gobuster / Feroxbuster
Untuk mencari folder atau file tersembunyi.
Nikto
Untuk cek basic web server misconfiguration.
Curl
Untuk memahami HTTP request dan response secara manual.
Searchsploit
Untuk mencari referensi exploit lokal dari Exploit-DB.
8. Workflow beginner yang bagus
Pakai alur ini setiap latihan:
Step 1: Apakah target bisa diakses? Step 2: Port/service apa yang terbuka? Step 3: Apakah ini WordPress? Step 4: Versi WordPress berapa? Step 5: User apa saja yang terlihat? Step 6: Plugin/theme apa yang terpasang? Step 7: Apakah versi plugin/theme vulnerable? Step 8: Exploit-nya butuh login atau tidak? Step 9: Bisa tidak membuktikan impact dengan aman? Step 10: Bagaimana cara memperbaikinya?
Kebiasaan ini lebih penting daripada menghafal payload.
9. Rencana latihan 7 hari
Hari 1: Install/start DVWP dan pahami struktur aplikasinya. Hari 2: Latihan nmap, curl, browser inspection, dan Burp Suite. Hari 3: Jalankan WPScan dan verifikasi user/plugin/theme secara manual. Hari 4: Pelajari path plugin di /wp-content/plugins/. Hari 5: Latihan directory discovery dan exposed file checking. Hari 6: Pilih satu vulnerability plugin, pelajari pelan-pelan, lalu tulis mini report. Hari 7: Ulangi dari awal tanpa melihat catatan.
10. Buat folder catatan latihan
Bikin folder seperti ini:
mkdir -p ~/Apps/Pentest/DVWP-notes cd ~/Apps/Pentest/DVWP-notes touch 01-recon.md touch 02-wordpress-structure.md touch 03-wpscan.md touch 04-plugins.md touch 05-exposed-files.md touch 06-findings-report.md touch 99-cheatsheet.md
Isi setiap file dengan format:
Target: Tool yang digunakan: Command: Arti command: Finding: Evidence / bukti: Risk: Fix: Lesson learned:
11. Contoh catatan sederhana
Target: http://127.0.0.1:31337 Tool: WPScan Command: wpscan --url http://127.0.0.1:31337 --enumerate u,p,t Arti: Melakukan enumerasi user, plugin, dan theme WordPress. Finding: Ditemukan beberapa plugin yang bisa dicek lebih lanjut. Evidence: Plugin terlihat di path /wp-content/plugins/. Risk: Jika plugin versi lama dan vulnerable, attacker bisa mengeksploitasi website. Fix: Update plugin, hapus plugin tidak terpakai, batasi akses admin, dan aktifkan hardening WordPress. Lesson learned: Dalam WordPress pentest, plugin sering menjadi sumber vulnerability utama.
12. Mindset penting saat latihan
Jangan berpikir:
Payload apa yang harus aku copy-paste?
Tapi biasakan berpikir:
Data apa yang dikirim user? Server memproses input ini sebagai apa? Apakah input masuk ke SQL query, command, file path, upload handler, atau HTML output? Apa buktinya input saya memengaruhi backend? Impact-nya apa? Cara mitigasinya apa?
Itu mindset pentester yang benar.
13. Batas aman
Yang boleh dilakukan:
DVWP lokal VM sendiri Docker sendiri Lab kampus/kantor yang memang diizinkan CTF resmi
Yang jangan dilakukan:
Scan website publik tanpa izin Brute force login asli Coba payload ke sistem kantor tanpa scope Upload shell ke server bukan milik sendiri Pakai WPScan ke domain publik tanpa izin
Intinya: DVWP bukan hanya tempat “nge-hack WordPress”. DVWP adalah tempat belajar cara berpikir pentester WordPress: enumerasi, verifikasi, pahami impact, lalu tulis report dengan rapi.