Bayangkan sebuah perusahaan dapat hasil scan otomatis yang bersih di hari Jumat. Selasa berikutnya, ada security researcher yang mengirim email. Researcher itu cuma mengganti satu angka di request API, dan bisa mengunduh invoice milik perusahaan lain. Scanner tidak akan menangkap ini, karena respons server terlihat normal. Celah seperti inilah yang dicari lewat penetration testing. Seorang tester, dengan izin tertulis dari Anda, mencoba membobol aplikasi seperti penyerang sungguhan, lalu mencatat persis bagaimana caranya dan bagaimana menutupnya.
Pentest atau Vulnerability Scan?
Scanner seperti Qualys, Nessus, atau OWASP ZAP menjalankan ribuan pengecekan yang sudah dikenal ke server dan aplikasi Anda. Tool ini jago menemukan patch yang belum dipasang, library usang, setting TLS yang lemah, dan security header yang hilang. Tapi scanner tidak tahu bahwa admin cabang hanya boleh melihat data cabangnya sendiri, bahwa voucher tidak boleh dipakai dua kali, atau bahwa langkah ketiga di alur approval bisa dilewati dengan memanggil API langsung. Pentester bekerja di Burp Suite, membaca setiap request, lalu merangkai beberapa celah kecil jadi serangan yang nyata. Anda butuh keduanya. Scan itu murah dan sebaiknya jalan tiap minggu atau tiap bulan. Pentest adalah pemeriksaan yang lebih dalam, dilakukan di momen-momen tertentu.
| Aspek | Vulnerability scan | Penetration test |
|---|---|---|
| Dikerjakan oleh | Tool otomatis, diatur oleh orang | Tester berpengalaman, pakai tool dan kerja manual |
| Yang ditemukan | CVE yang sudah dikenal, salah konfigurasi, header hilang | Celah hak akses, penyalahgunaan logika bisnis, serangan berantai |
| False positive | Sering, perlu dipilah | Jarang, setiap temuan sudah direproduksi |
| Frekuensi | Mingguan atau bulanan | Tahunan dan setelah perubahan besar |
| Durasi | Hitungan jam | Biasanya 5 sampai 15 hari kerja |
| Hasil | Daftar panjang sesuai severity versi tool | Report dengan bukti, skor CVSS, dan saran perbaikan |
Black Box, Grey Box, atau White Box
Di black box, tester hanya diberi URL, persis seperti orang luar. Kedengarannya realistis, tapi banyak hari kerja yang Anda bayar habis untuk recon, padahal jawabannya bisa dikirim tim Anda lewat satu email. Di grey box, tester diberi akun untuk setiap role dan dokumentasi API. Untuk kebanyakan aplikasi bisnis, cara ini menghasilkan temuan paling banyak per hari kerja, dan ini yang biasanya kami sarankan. White box menambahkan akses ke source code dan diagram arsitektur. Cocok untuk bagian yang berisiko tinggi seperti pembayaran, pinjaman, atau autentikasi, di mana Anda ingin tester membaca langsung kode yang menentukan siapa dapat uang.
Apa Saja yang Masuk Scope
- Aplikasi web: daftar URL, semua role user, dan fitur mana yang paling penting buat bisnis.
- API: file OpenAPI atau Postman collection, semua versi yang masih bisa diakses, termasuk endpoint untuk partner yang tidak dipanggil aplikasi utama.
- Aplikasi mobile: build Android dan iOS, dites dengan acuan OWASP MASVS untuk penyimpanan lokal, certificate pinning, deteksi root atau jailbreak, dan secret yang tertinggal di dalam aplikasi.
- Jaringan internal dan cloud: akses VPN untuk tester, range IP server, dan review read-only atas setting cloud seperti AWS IAM dan bucket storage.
- Biasanya di luar scope: serangan DoS, social engineering, dan layanan pihak ketiga seperti payment gateway, kecuali disepakati tertulis.
Vendor menghitung harga berdasarkan scope. Permintaan yang samar seperti tolong tes website kami akan dibalas dengan penawaran yang samar dan report yang tipis. Hitung dulu jumlah role, endpoint, dan aplikasinya sebelum minta penawaran.
Kapan Perlu Pentest
- Sebelum aplikasi yang mengelola uang atau data pribadi diluncurkan pertama kali.
- Setelah perubahan besar: alur pembayaran baru, login ditulis ulang, atau API dibuka untuk partner.
- Minimal setahun sekali untuk sistem production, karena kode, dependency, dan teknik penyerang terus berubah.
- Saat klien korporat memintanya waktu onboarding vendor. Bank dan perusahaan besar sekarang rutin mengirim kuesioner keamanan yang menanyakan report pentest terbaru.
- Untuk bank, penyelenggara pembayaran, dan fintech lending yang diawasi OJK atau Bank Indonesia, pengujian keamanan independen secara berkala sudah jadi bagian dari manajemen risiko TI yang diharapkan, dan pemeriksa akan meminta hasilnya.
- Auditor ISO 27001 mencari bukti bahwa kerentanan teknis ditemukan dan diperbaiki. UU PDP (UU No. 27 Tahun 2022) mewajibkan pengamanan data pribadi yang memadai. Report pentest beserta hasil retest jadi bukti yang kuat untuk keduanya.
Alur Pengerjaan Pentest
- 1Scoping: meeting untuk menyepakati target, role, environment, dan jenis tes, lalu vendor mengirim penawaran dengan jumlah hari kerja tester.
- 2Rules of engagement: dokumen yang ditandatangani berisi jadwal testing, IP address tester, kontak darurat kedua pihak, apa yang dilakukan kalau ditemukan celah kritis atau tanda-tanda sudah pernah dibobol, dan cara menangani data uji.
- 3Persiapan: tim Anda menyiapkan environment dan akun, dibahas di bagian berikutnya.
- 4Masa testing: biasanya 5 hari kerja untuk aplikasi web kecil dengan beberapa role, dan 10 sampai 15 hari untuk web, API, plus aplikasi Android dan iOS. Temuan kritis harus dilaporkan hari itu juga, jangan ditunggu sampai report akhir.
- 5Report: ringkasan eksekutif untuk manajemen, lalu setiap temuan lengkap dengan skor CVSS, URL atau komponen yang terdampak, langkah reproduksi, bukti berupa screenshot atau request, dan rekomendasi perbaikan.
- 6Retest: setelah tim Anda memperbaiki temuan, biasanya dalam 30 sampai 90 hari, vendor mengecek ulang dalam satu sampai tiga hari dan mengeluarkan report yang diperbarui. Surat hasil retest inilah yang sebenarnya ingin dilihat auditor dan klien.
Menyiapkan Environment
Lakukan pentest di staging yang sama dengan production: build yang sama, konfigurasi server yang sama, dan kalau bisa aturan WAF yang sama. Isi dengan data yang realistis tapi sudah dianonimkan, karena database kosong menyembunyikan bug di fitur pencarian, export, dan laporan. Buat dua akun untuk setiap role supaya tester bisa mencoba mengakses data user lain dari akunnya. Dari situ celah IDOR ketahuan, dan ini temuan serius yang paling sering kami lihat. Beri tester jalan untuk melewati OTP dan CAPTCHA, dan whitelist IP mereka di Cloudflare atau WAF. Kalau tidak, Anda membayar seminggu penuh hanya untuk mengetes firewall. Ambil backup sebelum testing dimulai, dan kabari pihak hosting serta tim on-call supaya alert jam 2 pagi tidak berubah jadi kepanikan.
Membaca Report dan Menentukan Prioritas
Kebanyakan report memberi skor temuan dengan CVSS. Versi 3.1 masih umum dipakai, dan versi 4.0 sudah keluar sejak akhir 2023. Rentangnya: Critical 9,0 sampai 10,0, High 7,0 sampai 8,9, Medium 4,0 sampai 6,9, dan Low 0,1 sampai 3,9, ditambah catatan informational. Skor ini sifatnya umum, jadi baca dengan konteks bisnis Anda. Temuan Medium yang membuat user mana pun bisa mengunduh scan KTP pelanggan lebih mendesak daripada temuan High di halaman internal yang hanya bisa dibuka dua admin.
- Critical dan High: perbaiki dalam hitungan hari. Kalau aplikasinya belum live, tahan dulu rilisnya.
- Medium: masukkan ke sprint berikutnya, sekitar 30 hari.
- Low dan informational: kumpulkan di backlog dan kerjakan bersama maintenance rutin.
- Cari akar masalahnya. Kalau satu endpoint tidak punya pengecekan otorisasi, kemungkinan besar endpoint lain juga begitu. Perbaiki di middleware atau policy yang dipakai bersama, lalu minta tester mengecek polanya, jangan hanya satu URL itu.
Report pentest dengan dua puluh temuan yang belum ditutup dan tanpa retest itu isinya daftar resmi cara masuk ke sistem Anda.
Cara Memilih Jasa Pentest
- Minta contoh report yang sudah disensor. Temuan yang bagus punya langkah reproduksi dan bukti yang jelas. Output scanner yang ditempel lalu diberi logo perusahaan adalah tanda bahaya.
- Tanyakan metodologinya: OWASP WSTG untuk web, OWASP MASVS dan MASTG untuk mobile, OWASP API Security Top 10 untuk API, serta PTES atau NIST SP 800-115 untuk jaringan.
- Cek sertifikasi orang yang benar-benar akan mengetes, misalnya OSCP, OSWE, Burp Suite Certified Practitioner, atau CREST. Tanyakan juga apakah ada pekerjaan yang dioper ke subkontraktor.
- Pastikan retest sudah termasuk harga, dan berapa lama tawaran retest itu berlaku.
- Sepakati NDA, di mana bukti temuan disimpan, siapa yang bisa melihatnya, dan kapan dihapus.
- Hati-hati dengan harga yang terlalu murah untuk scope-nya. Dua hari untuk aplikasi besar dengan lima role itu namanya scan, apa pun sebutannya di proposal.
Hitung juga waktu tim Anda sendiri. Siapkan satu developer yang standby selama masa testing untuk menjawab pertanyaan dan mereset akun, dan sisihkan satu sprint setelah report keluar untuk perbaikan. Pentest tanpa waktu untuk memperbaiki temuan sama saja dengan membeli dokumen.
Scanner sebaiknya jalan sepanjang tahun, sementara pentest dipakai untuk pertanyaan yang hanya bisa dijawab manusia. Di layanan managed service yang kami jalankan untuk klien, scan terjadwal, pentest tahunan, dan retest masuk dalam satu rutinitas, jadi temuannya langsung masuk ke backlog tim yang merawat kodenya.
Poin penting
- Vulnerability scan menemukan celah yang sudah dikenal dengan biaya murah. Pentest menemukan celah hak akses dan logika bisnis yang hanya bisa dilihat manusia.
- Grey box dengan akun untuk setiap role memberi hasil paling banyak per hari kerja tester untuk kebanyakan aplikasi bisnis.
- Lakukan pentest sebelum peluncuran, setelah perubahan besar, minimal setahun sekali, dan saat klien, regulator, atau auditor meminta bukti.
- Siapkan staging yang realistis, dua akun per role, IP tester yang di-whitelist, dan satu developer yang standby.
- Tentukan prioritas dari dampak bisnis selain skor CVSS, perbaiki akar masalahnya, dan selalu tutup dengan retest.


