Di episode #22 kita bahas cara kerja seorang penetration tester: izin tertulis, scope, lalu laporan. Nah, alat kerja utamanya apa? Jawabannya hampir selalu sama — web proxy. Kali ini saya catat bagaimana sebuah proxy bisa membuat saya melihat dan mengubah trafik HTTP saya sendiri, pakai Burp Suite Community Edition versi 2026.10.1 (rilis 26 Oktober 2026). Ini bagi saya bagian paling seru sekaligus paling membuat was-was, karena sekali dipasang, semua request dari browser saya terlihat telanjang di layar.

Proxy: man-in-the-middle buatan sendiri
Di episode #6 kita sudah sentuh firewall dan port. Web proxy pada dasarnya adalah aplikasi yang mendengarkan di satu port lokal (Burp default: 127.0.0.1:8080), lalu meneruskan request saya ke server tujuan dan mengembalikan responsnya. Posisinya persis di tengah: browser saya percaya kepada proxy, server tujuan melihat proxy sebagai klien. Saya sendiri yang jadi “pria di tengah” — hanya saja terhadap lalu lintas milik saya sendiri.
Yang membuat ini berguna untuk belajar: tanpa proxy, saya hanya melihat hasil akhir halaman. Dengan proxy, saya melihat request mentahnya — header, cookie, parameter, semuanya. Bagi saya sebagai programmer, ini seperti menambah console.log() di lapisan jaringan: saya akhirnya tahu apa yang benar-benar dikirim browser saya ke server.
Yang bisa dilakukan Community Edition
Saya memilih Community Edition karena gratis dan cukup untuk belajar. Versi stabil saat ini 2026.10.1. Bedanya dengan Professional perlu saya catat jujur sejak awal supaya tidak kaget nanti:
| Fitur | Community | Professional |
|---|---|---|
| Intercept & HTTP history | Ya | Ya |
| Repeater (kirim ulang request) | Ya | Ya |
| Intruder (fuzzing otomatis) | Ya, tapi rate-limited lambat | Tanpa batas |
| Decoder & Comparer | Ya | Ya |
| Scanner (active scan otomatis) | Tidak ada | Ya |
| Declarative scan rules | Tidak ada | Ya |
Artinya: di Community saya wajib memeriksa halaman demi halaman secara manual, tanpa pemindai otomatis. Sebenarnya ini bagus untuk belajar — saya jadi benar-benar memahami request yang saya kirim, bukan sekadar menunggu laporan mesin.
Empat alur yang saya kuasai dulu
- Intercept — mode “tahan” request sebelum terkirim. Saya bisa mengubah isi form, parameter, atau header di tengah jalan. Ini yang paling bikin saya merasa memegang kendali.
- HTTP history — semua request/respons tercatat. Saat ada bug di aplikasi lab, saya tinggal telusuri ulang request mana yang aneh.
- Repeater — ambil satu request dari history, ubah sedikit, kirim ulang. Ini alat harian untuk menguji dugaan, misalnya apakah sebuah parameter masih bisa dimanipulasi.
- Intruder — mengirim request yang sama berulang dengan bagian yang diganti (payload). Di Community ini sengaja diperlambat, jadi untuk latihan kecil saja.
Bentuk request yang saya lihat kurang lebih begini ketika saya menahan dan mengubah sebuah parameter login di lab DVWA:
POST /login HTTP/1.1 Host: localhost:8080 Content-Type: application/x-www-form-urlencoded Cookie: PHPSESSID=abc123 username=admin&password=test&submit=Login
Perhatikan baris terakhir — di sinilah, misalnya, input SQL Injection dari episode #8 akan saya sisipkan saat menguji lab. Kuncinya tetap sama: saya hanya melakukannya terhadap aplikasi yang memang saya punya (lab DVWA, WebGoat, atau PortSwigger Academy), bukan target pihak ketiga. UU ITE tidak peduli niat baik saya kalau izinnya tidak ada.
Cara memasang & jebakan pertama saya
Burp menyediakan sertifikat CA sendiri supaya trafik HTTPS juga bisa dibaca. Saya mengunduh sertifikat itu, memasangnya ke trust store sistem, lalu mengatur browser memakai proxy 127.0.0.1:8080. Jebakan yang saya temui sendiri: halaman HTTPS tiba-tiba tidak bisa dibuka sama sekali sampai sertifikat CA benar-benar terpasang di sistem, bukan sekadar di browser. Kedua: lupa mematikan intercept sehingga browsing terasa “macet” — padahal request sedang ditahan proxy menunggu saya menekan Forward. Ketiga, yang paling penting: proxy ini hanya mendengarkan di localhost, dan itu sebuah pengaman. Saya tidak pernah mengubah proxy sistem ke mode menerima koneksi dari luar — kalau ada, perangkat lain di jaringan yang sama bisa lewat proxy saya.
Untuk alternatif open source, ada OWASP ZAP yang fitur active scan-nya tersedia gratis — itu pilihan saya kalau suatu saat butuh pemindai otomatis tanpa harus berlangganan.
Yang saya ambil
Belajar pakai proxy mengubah cara saya menulis kode. Sekarang setiap kali menambah endpoint, saya terbiasa membayangkan request apa yang akan terlihat di HTTP history: apakah token CSRF-nya sudah ada (episode #10), apakah cookie-nya sudah benar atributnya (episode #11), apakah ada parameter yang tidak perlu ikut dikirim. Di episode berikutnya kita lanjut ke topik yang sangat berkaitan: password cracking dengan hashcat dan john — untuk memahami kenapa MFA dan password manager bukan opsional.
Sumber
- PortSwigger — Burp Suite releases (versi 2026.10.1, 26 Oktober 2026): portswigger.net/burp/releases
- PortSwigger — Download Community Edition: portswigger.net/burp/communitydownload
- PortSwigger Web Security Academy (lab gratis): portswigger.net/web-security
- OWASP ZAP (proxy open source): zaproxy.org
- DVWA (lab lokal): github.com/digininja/DVWA
Komentar Terbaru