Checklist Persiapan Pentest untuk Perusahaan: Apa Saja yang Harus Disiapkan?
Apakah perusahaan Anda berencana melakukan pentest atau penetration testing?
Sebelum pengujian dimulai, ada satu hal yang sering terlupakan:
Pentest yang baik tidak dimulai ketika tester mulai melakukan pengujian.
Pentest justru dimulai jauh sebelumnya.
Perusahaan perlu menentukan:
- sistem apa yang akan diuji;
- siapa yang memberikan izin;
- kapan pengujian dilakukan;
- apa saja batasannya;
- siapa PIC yang harus dihubungi;
- bagaimana menangani temuan;
- dan apa yang dilakukan setelah pentest selesai.
Tanpa persiapan yang matang, pentest dapat menjadi kurang efektif dan bahkan berpotensi mengganggu operasional perusahaan.
Karena itu, artikel ini menyediakan checklist persiapan pentest untuk perusahaan yang dapat digunakan oleh management, IT, security, developer, maupun project owner.
Apa Itu Pentest?
Pentest atau penetration testing adalah pengujian keamanan terhadap sistem dengan pendekatan simulasi serangan yang dilakukan secara legal, terkontrol, dan berdasarkan authorization.
Pentest dapat dilakukan terhadap:
- website;
- web application;
- mobile application;
- API;
- network;
- server;
- cloud;
- internal infrastructure;
- external infrastructure.
Tujuannya adalah membantu perusahaan mengidentifikasi dan memvalidasi kelemahan keamanan serta memahami potensi risikonya.
Namun hasil pentest akan sangat dipengaruhi oleh kualitas persiapan.
Mengapa Persiapan Pentest Penting?
Bayangkan perusahaan meminta tester:
“Tolong pentest aplikasi kami.”
Tetapi tidak menjelaskan:
- aplikasi mana;
- environment apa;
- fungsi apa;
- kapan boleh diuji;
- siapa PIC;
- sistem apa yang dilarang diuji.
Kondisi tersebut dapat menimbulkan berbagai masalah.
Misalnya:
Scope tidak jelas
↓
Target pengujian menjadi ambigu
↓
Risiko pengujian meningkat
↓
Hasil pentest kurang optimal
Sebaliknya, persiapan yang baik membuat proses:
Lebih aman + lebih terarah + lebih efisien
Checklist Utama Persiapan Pentest
Berikut checklist yang dapat digunakan:
Sebelum Pentest
☐ Tentukan tujuan
☐ Tentukan scope
☐ Tentukan target
☐ Tentukan jenis pentest
☐ Tentukan environment
☐ Siapkan authorization
☐ Susun Rules of Engagement
☐ Tentukan timeline
☐ Tentukan PIC
☐ Siapkan dokumentasi sistem
☐ Identifikasi data sensitif
☐ Siapkan backup/recovery
☐ Tentukan prosedur emergency
☐ Tentukan remediation owner
☐ Tentukan kebutuhan retesting
Mari bahas satu per satu.
1. Tentukan Tujuan Pentest
Pertama, perusahaan harus menjawab:
Mengapa pentest dilakukan?
Tujuannya bisa berbeda-beda.
Misalnya:
- validasi keamanan aplikasi baru;
- pengujian setelah perubahan sistem;
- security assessment;
- persiapan audit;
- memenuhi kebutuhan internal security;
- mengidentifikasi risiko pada sistem kritis.
Tujuan akan menentukan:
Scope + Methodology + Output
2. Tentukan Scope
Scope merupakan salah satu bagian paling penting.
Scope menjelaskan:
Apa saja yang boleh dan tidak boleh diuji?
Contohnya:
In Scope
- Customer Portal;
- API;
- authentication;
- authorization;
- fungsi transaksi.
Out of Scope
- sistem partner;
- third-party application;
- production database;
- sistem internal tertentu.
Scope harus cukup spesifik agar tidak menimbulkan interpretasi berbeda.
3. Buat Daftar Target
Setelah scope ditentukan, buat daftar target secara jelas.
Contohnya:
| Target | Jenis | Environment | Status |
| Customer Portal | Web App | Staging | In Scope |
| API | API | Staging | In Scope |
| Admin Portal | Web App | Production | Out of Scope |
Jika terdapat banyak aset, gunakan asset inventory yang lebih terstruktur.
4. Tentukan Environment
Perusahaan perlu menentukan:
Apakah pentest dilakukan pada production atau non-production environment?
Jika memungkinkan, pengujian dapat dilakukan pada environment yang dirancang untuk testing.
Namun dalam kondisi tertentu, perusahaan mungkin membutuhkan pengujian terhadap production.
Jika production masuk scope, perlu ada:
- batasan aktivitas;
- monitoring;
- emergency contact;
- prosedur penghentian;
- dan kontrol risiko yang lebih ketat.
5. Pastikan Authorization
Pentest harus memiliki izin.
Dokumentasikan authorization dari pihak yang memiliki kewenangan.
Authorization membantu memastikan bahwa tester:
- memiliki izin melakukan pengujian;
- memahami target;
- memahami batasan;
- dan mengetahui siapa pihak yang bertanggung jawab.
Jangan mengandalkan izin secara lisan saja untuk proyek yang membutuhkan formalitas tinggi.
6. Susun Rules of Engagement
Rules of Engagement (RoE) menjelaskan bagaimana pentest boleh dilakukan.
Beberapa hal yang dapat dicantumkan:
- target;
- waktu pengujian;
- metode;
- batasan;
- aktivitas yang dilarang;
- PIC;
- emergency contact;
- escalation procedure.
Contohnya:
Pengujian dilakukan pada pukul 22.00–02.00 dan tidak diperbolehkan melakukan aktivitas yang dapat menyebabkan perubahan atau penghapusan data.
RoE membantu mengurangi risiko miskomunikasi.
7. Tentukan Jenis Pentest
Jangan hanya mengatakan:
“Kami ingin pentest.”
Tentukan jenis pengujiannya.
Apakah:
Web Application Pentest?
API Pentest?
Mobile Application Pentest?
Network Pentest?
External Pentest?
Internal Pentest?
Cloud Security Testing?
Jenis pengujian akan menentukan methodology, scope, kompetensi tester, waktu, dan output yang dibutuhkan.
8. Tentukan Black Box, Gray Box, atau White Box
Pendekatan pengujian juga perlu ditentukan.
Black Box
Tester mendapatkan informasi terbatas.
Gray Box
Tester mendapatkan informasi sebagian.
White Box
Tester memperoleh informasi sistem yang lebih lengkap.
Pemilihan pendekatan sebaiknya disesuaikan dengan tujuan pengujian.
9. Siapkan Dokumentasi Sistem
Dokumentasi dapat membantu tester memahami sistem secara lebih efisien.
Dokumentasi yang relevan dapat mencakup:
- system architecture;
- network diagram;
- application flow;
- API documentation;
- user roles;
- authentication flow;
- business process;
- asset inventory.
Tidak semua informasi harus diberikan pada semua jenis pentest.
Informasi diberikan sesuai methodology dan scope yang disepakati.
10. Identifikasi Data Sensitif
Sebelum pengujian, perusahaan perlu mengetahui:
Data apa yang mungkin dapat diakses selama pentest?
Contohnya:
- data pelanggan;
- data transaksi;
- data keuangan;
- data karyawan;
- credentials;
- confidential business information.
Tester perlu mengetahui batasan penanganan data sensitif.
Tujuannya adalah:
Test security without unnecessarily exposing sensitive data.
11. Siapkan Test Account
Jika menggunakan pendekatan Gray Box atau White Box, perusahaan mungkin perlu menyediakan akun pengujian.
Misalnya:
User
Supervisor
Admin
Akun sebaiknya:
- khusus untuk testing;
- tidak menggunakan akun personal;
- memiliki privilege yang sesuai;
- dapat dinonaktifkan setelah pengujian.
Ini membantu mengurangi risiko terhadap akun operasional.
12. Tentukan User Role
Untuk aplikasi yang memiliki role berbeda, dokumentasikan role yang relevan.
Contoh:
Customer
↓
Staff
↓
Supervisor
↓
Administrator
Informasi ini penting untuk pengujian:
Authentication
dan
Authorization.
Tester dapat memahami batas akses yang seharusnya dimiliki setiap role.
13. Siapkan Backup dan Recovery Plan
Jika pentest dilakukan terhadap environment penting, perusahaan perlu mempertimbangkan:
- backup;
- recovery;
- rollback;
- monitoring.
Backup tidak berarti tester akan melakukan aktivitas destruktif.
Backup merupakan bagian dari risk management.
Prinsipnya:
Prepare for the unexpected.
14. Tentukan Jadwal Pentest
Jangan memilih waktu secara sembarangan.
Pertimbangkan:
- jam operasional;
- peak traffic;
- maintenance window;
- deployment;
- closing financial;
- business critical period.
Misalnya aplikasi digunakan untuk transaksi 24/7.
Pengujian yang berpotensi menimbulkan beban sebaiknya direncanakan dengan lebih hati-hati.
15. Tentukan PIC
Setidaknya tentukan:
Business PIC
Pihak yang memahami kebutuhan bisnis.
Technical PIC
Pihak yang memahami sistem.
Security PIC
Pihak yang bertanggung jawab terhadap security.
Emergency Contact
Pihak yang dapat dihubungi jika terjadi kondisi tidak normal.
Contoh struktur:
Management
↓
Project Owner
↓
IT/Security
↓
Tester
Semua pihak harus mengetahui siapa yang harus dihubungi.
16. Siapkan Emergency Procedure
Apa yang terjadi jika:
- aplikasi mengalami gangguan;
- traffic meningkat;
- service berhenti;
- alert keamanan aktif;
- atau ditemukan kondisi kritis?
Harus ada prosedur:
Detect
↓
Notify
↓
Assess
↓
Stop Testing if Needed
↓
Recover
Dengan prosedur yang jelas, perusahaan dapat merespons lebih cepat.
17. Tentukan Communication Channel
Buat satu channel komunikasi khusus jika diperlukan.
Misalnya:
- email;
- meeting;
- ticketing system;
- chat internal.
Tujuannya agar komunikasi tidak tersebar di banyak tempat.
Pastikan informasi sensitif tidak dibagikan secara sembarangan.
18. Tentukan Deliverables
Sebelum pentest dimulai, sepakati output yang diharapkan.
Contohnya:
Executive Report
Untuk management.
Technical Report
Untuk IT/Security/Developer.
Finding Summary
Daftar vulnerability.
Remediation Recommendation
Rekomendasi perbaikan.
Retest Report
Jika retesting termasuk dalam scope.
Dengan demikian, perusahaan mengetahui apa yang akan diterima setelah pentest selesai.
19. Tentukan Severity dan Risk Rating
Perusahaan dan tester perlu menyepakati bagaimana temuan akan dinilai.
Misalnya:
Critical
High
Medium
Low
Namun jangan hanya mengandalkan severity.
Pertimbangkan juga:
Business Impact
Contohnya vulnerability pada:
Core Transaction System
tentu perlu mendapatkan perhatian berbeda dibandingkan vulnerability pada sistem non-kritis.
20. Tentukan Siapa yang Bertanggung Jawab atas Remediation
Ini sering terlupakan.
Setelah pentest selesai:
Siapa yang akan memperbaiki vulnerability?
Misalnya:
| Finding | Owner | Target |
| API Authorization | Development | Prioritas tinggi |
| Configuration | Infrastructure | Prioritas sedang |
| Authentication | Application Team | Prioritas tinggi |
Dengan begitu, laporan tidak berhenti menjadi dokumen.
21. Siapkan Remediation Plan
Sebelum pentest selesai, perusahaan sebaiknya sudah memiliki gambaran proses:
Finding
↓
Risk Assessment
↓
Prioritization
↓
Remediation
↓
Retest
↓
Close
Proses ini membuat hasil pentest lebih mudah diintegrasikan ke security improvement program.
22. Tentukan Apakah Perlu Retesting
Tanyakan sejak awal:
Apakah retesting termasuk dalam scope?
Retesting dilakukan untuk memastikan vulnerability telah diperbaiki.
Contohnya:
Finding: High
↓
Remediation
↓
Retest
↓
Fixed
Jika retesting tidak termasuk scope awal, perusahaan perlu menentukan mekanisme follow-up yang sesuai.
Checklist Pentest untuk Management
Management dapat menggunakan checklist singkat berikut:
☐ Tujuan pentest jelas
☐ Risiko bisnis sudah dipahami
☐ Scope disetujui
☐ Authorization tersedia
☐ Budget tersedia
☐ Timeline disetujui
☐ PIC ditentukan
☐ Emergency procedure tersedia
☐ Deliverables disepakati
☐ Remediation owner ditentukan
☐ Retesting direncanakan
Checklist Pentest untuk IT/Security
☐ Asset inventory tersedia
☐ Target sudah ditentukan
☐ Environment ditentukan
☐ Architecture tersedia
☐ API documentation tersedia jika relevan
☐ Test account tersedia
☐ User role terdokumentasi
☐ Monitoring aktif
☐ Backup/recovery tersedia sesuai kebutuhan
☐ Emergency contact tersedia
☐ Rules of Engagement disepakati
Checklist Pentest untuk Developer
☐ Application flow tersedia
☐ Business logic dipahami
☐ API documentation tersedia
☐ Authentication flow tersedia
☐ Authorization model terdokumentasi
☐ Test account tersedia
☐ Test data tersedia
☐ PIC developer tersedia
☐ Remediation owner ditentukan
☐ Retesting direncanakan
Checklist Pentest Lengkap
Berikut checklist yang dapat langsung digunakan:
A. Planning
☐ Tentukan tujuan
☐ Tentukan target
☐ Tentukan scope
☐ Tentukan jenis pentest
☐ Tentukan methodology
B. Authorization
☐ Authorization
☐ Rules of Engagement
☐ NDA/confidentiality jika diperlukan
☐ Contact person
C. Technical Preparation
☐ Asset inventory
☐ Architecture
☐ API documentation
☐ Test account
☐ User role
☐ Test data
D. Operational Preparation
☐ Jadwal
☐ Monitoring
☐ Backup
☐ Recovery
☐ Emergency procedure
E. Reporting
☐ Executive report
☐ Technical report
☐ Finding classification
☐ Risk rating
☐ Recommendation
F. Post-Pentest
☐ Remediation
☐ Retesting
☐ Closure
☐ Lessons learned
Kesalahan Umum Saat Mempersiapkan Pentest
1. Scope Terlalu Umum
“Pentest semua sistem.”
Kalimat seperti ini tidak cukup.
Scope harus jelas.
2. Tidak Menentukan Batasan
Tester perlu mengetahui aktivitas yang diperbolehkan dan dilarang.
3. Tidak Menyiapkan PIC
Jika terjadi masalah, komunikasi dapat menjadi lambat.
4. Tidak Menentukan Environment
Production dan staging memiliki risiko yang berbeda.
5. Hanya Fokus pada Technical Findings
Management juga perlu memahami business impact.
6. Tidak Menyiapkan Remediation
Pentest bukan akhir proses.
Finding harus ditindaklanjuti.
Apakah Perusahaan Harus Melakukan Pentest Setiap Tahun?
Tidak ada satu jadwal yang cocok untuk semua perusahaan.
Frekuensi pentest sebaiknya mempertimbangkan:
- criticality sistem;
- perubahan aplikasi;
- perubahan architecture;
- risk profile;
- kebutuhan compliance;
- incident history;
- dan security maturity.
Selain pengujian berkala, pentest juga dapat dipertimbangkan setelah perubahan signifikan pada sistem.
Misalnya:
Major Application Update
↓
Architecture Change
↓
Cloud Migration
↓
New API
↓
Security Testing
Persiapan Pentest Bukan Hanya Tanggung Jawab Tim IT
Pentest melibatkan beberapa pihak.
Management
Menentukan prioritas dan risk appetite.
IT
Menyiapkan infrastructure.
Security
Menentukan security requirement.
Developer
Memahami application dan melakukan remediation.
Business
Memahami business process.
Tester
Melakukan security testing sesuai scope.
Karena itu:
Pentest adalah aktivitas lintas fungsi, bukan hanya pekerjaan tim IT.
Bagaimana Jika Perusahaan Belum Memiliki Tim Pentest Internal?
Tidak semua perusahaan memiliki security team dengan kompetensi penetration testing.
Dalam kondisi tersebut, perusahaan dapat mempertimbangkan menggunakan tenaga eksternal yang memiliki kompetensi dan pengalaman yang sesuai.
Namun perusahaan tetap perlu memahami prosesnya.
Minimal pihak internal harus mampu:
- menentukan scope;
- memahami risiko;
- menilai hasil laporan;
- menentukan prioritas remediation;
- berkomunikasi dengan tester;
- dan melakukan follow-up.
Karena itu, knowledge transfer juga penting.
Training Pentest untuk Mempersiapkan SDM Perusahaan
Pentest yang efektif tidak hanya membutuhkan tools dan teknologi.
Perusahaan juga membutuhkan SDM yang memahami:
Cybersecurity Fundamentals
Vulnerability
Penetration Testing Methodology
Risk Assessment
Reporting
Remediation
NEMA Academy dapat membantu perusahaan meningkatkan kompetensi SDM melalui program Training Pentest dan Cybersecurity yang dapat disesuaikan dengan kebutuhan organisasi.
Program training dapat diarahkan untuk:
- IT;
- Security;
- Network;
- Developer;
- System Administrator;
- maupun professional yang ingin memahami cybersecurity dari sisi manajemen.
Materi dapat disesuaikan berdasarkan level:
Basic → Intermediate → Advanced
Dengan pendekatan pembelajaran:
Concept → Demonstration → Practice → Case Study → Review
Dengan demikian, peserta tidak hanya memahami istilah pentest, tetapi juga memahami bagaimana proses penetration testing dapat direncanakan, dilaksanakan, dilaporkan, dan ditindaklanjuti dalam lingkungan perusahaan.
Kesimpulan
Persiapan merupakan bagian penting dalam keberhasilan pentest.
Sebelum tester mulai melakukan pengujian, perusahaan perlu memastikan:
Tujuan jelas
↓
Scope jelas
↓
Authorization tersedia
↓
Rules of Engagement disepakati
↓
Target dan environment ditentukan
↓
PIC tersedia
↓
Emergency procedure siap
↓
Reporting disepakati
↓
Remediation owner ditentukan
↓
Retesting direncanakan
Dengan persiapan tersebut, pentest dapat dilakukan secara lebih:
Aman
Terarah
Efisien
Terukur
dan
Relevan dengan kebutuhan bisnis.
Hal terpenting adalah jangan melihat pentest hanya sebagai aktivitas:
“Mencari celah keamanan.”
Tetapi sebagai bagian dari proses:
Identify → Validate → Prioritize → Remediate → Retest → Improve
Karena tujuan akhir pentest bukan sekadar menghasilkan laporan vulnerability.
Tujuannya adalah membantu perusahaan:
memahami risiko, memperbaiki kelemahan, dan meningkatkan keamanan sistem secara berkelanjutan.
Dan ketika perusahaan ingin membangun kemampuan cybersecurity dari dalam, pengembangan kompetensi SDM menjadi salah satu investasi penting untuk mendukung security posture organisasi dalam jangka panjang.
Butuh training IT untuk tim Anda?
NEMA Academy merancang in-house training dan pendampingan yang disesuaikan dengan kebutuhan organisasi Anda. Konsultasikan kebutuhan tim Anda langsung dengan kami.

