1. Pengenalan Penetration Testing
Penetration Testing (atau disingkat pentest) adalah simulasi serangan siber yang dilakukan secara sistematis dan terstruktur terhadap sistem, jaringan, atau aplikasi â dengan izin resmi dari pemilik sistem. Tujuannya adalah mengidentifikasi kelemahan keamanan sebelum penyerang sungguhan menemukannya.
Penetration testing berbeda dari vulnerability scanning yang hanya mendeteksi kerentanan. Dalam pentest, tester benar-benar mencoba mengeksploitasi kerentanan untuk membuktikan dampak nyata yang bisa terjadi. Ini memberikan gambaran yang lebih realistis tentang risiko keamanan yang dihadapi organisasi.
Jenis-Jenis Penetration Testing
| Jenis | Basis Pengetahuan | Simulasi | Kegunaan |
|---|---|---|---|
| Black Box | Tidak ada informasi â tester seperti penyerang asing | External attacker tanpa akses internal | Menguji pertahanan dari luar |
| White Box | Full akses â source code, arsitektur, kredensial | Insider threat atau code review | Analisis mendalam, coverage tinggi |
| Grey Box | Informasi parsial â beberapa akses terbatas | Authenticated user atau karyawan | Simulasi realistis, efisien |
Cakupan Penetration Testing
| Cakupan | Target | Contoh Tools |
|---|---|---|
| Network Pentest | Infrastruktur jaringan, server, firewall | Nmap, Metasploit, Nessus |
| Web Application Pentest | Aplikasi web, API, backend | Burp Suite, OWASP ZAP, sqlmap |
| Mobile App Pentest | Aplikasi Android/iOS | APKTool, Frida, MobSF |
| Social Engineering | Manusia â phishing, pretexting | GoPhish, SET Framework |
| Wireless Pentest | WiFi, Bluetooth, protokol nirkabel | Aircrack-ng, Kismet |
| Physical Pentest | Akses fisik ke gedung/ruang server | Lockpicks, RFID cloners |
Penetration testing HARUS selalu dilakukan dengan izin resmi tertulis dari pemilik sistem. Melakukan testing tanpa izin adalah tindak pidana yang dapat diancam hukuman berdasarkan UU ITE (Undang-Undang Informasi dan Transaksi Elektronik). Selalu pastikan ada scope of work dan rules of engagement yang disetujui kedua belah pihak sebelum memulai.
2. Methodology & Framework
Penetration testing yang profesional selalu mengikuti methodology yang terstruktur dan terdokumentasi. Ini memastikan testing dilakukan secara menyeluruh, konsisten, dan hasilnya dapat dipertanggungjawabkan. Beberapa framework populer yang digunakan di industri:
PTES (Penetration Testing Execution Standard)
| Fase | Aktivitas | Durasi Khas |
|---|---|---|
| 1. Pre-engagement | Scope, rules of engagement, kontrak, legal | 1-2 minggu |
| 2. Intelligence Gathering | OSINT, footprinting, informasi publik | 1-3 hari |
| 3. Threat Modeling | Identifikasi aset kritis dan vektor serangan | 1 hari |
| 4. Vulnerability Analysis | Scanning dan identifikasi kelemahan | 2-3 hari |
| 5. Exploitation | Mencoba mengeksploitasi kelemahan yang ditemukan | 3-5 hari |
| 6. Post-Exploitation | Privilege escalation, lateral movement, data exfil | 2-3 hari |
| 7. Reporting | Dokumentasi temuan, rekomendasi, executive summary | 3-5 hari |
OWASP Testing Guide
Untuk web application pentest, OWASP Testing Guide adalah referensi utama. Panduan ini mencakup:
5. Exploitation (Eksploitasi)
Fase exploitation adalah inti dari penetration testing â di mana tester benar-benar memanfaatkan kerentanan yang ditemukan untuk mendapatkan akses ke sistem. Ini membuktikan bahwa kerentanan tersebut memiliki dampak nyata dan bukan sekadar teori.
Metasploit Framework
6. Reporting & Documentation
Reporting adalah fase paling penting â bahkan lebih penting dari exploitation itu sendiri. Laporan yang baik mengubah temuan teknis menjadi aksi perbaikan yang bisa dipahami oleh manajemen dan diterapkan oleh tim IT. Tanpa laporan yang baik, seluruh usaha penetration testing menjadi sia-sia.
Struktur Laporan Pentest
LAPORAN PENETRATION TESTING
Severity : CRITICAL (CVSS 9.8)
Location : https://app.contoh.com/login
Description : Parameter 'username' vulnerable to SQL injection
Impact : Full database access, data exfiltration
Evidence : [Screenshot + Proof of Concept]
Remediation : Gunakan parameterized queries (prepared statements)
References : CWE-89, OWASP A03:2021
Severity : HIGH (CVSS 7.5)
Location : https://app.contoh.com/api/auth
Description : No rate limiting on authentication endpoint
Impact : Brute force attack possible
Evidence : [1000 requests tanpa block]
Remediation : Implement rate limiting (5 attempts/15 min)
References : CWE-307, OWASP A07:2021
Severity Classification
| Severity | CVSS Score | Response Time | Contoh |
|---|---|---|---|
| đ´ Critical | 9.0 - 10.0 | Immediate (24 jam) | RCE, SQL Injection, Auth Bypass |
| đ High | 7.0 - 8.9 | 1 minggu | Stored XSS, Privilege Escalation |
| đĄ Medium | 4.0 - 6.9 | 1 bulan | CSRF, Information Disclosure |
| đĸ Low | 0.1 - 3.9 | Quarterly | Missing headers, verbose errors |
| âšī¸ Info | 0.0 | Best practice | Outdated software version |
7. Pengenalan Kali Linux
Kali Linux adalah distribusi Linux yang dirancang khusus untuk penetration testing, security research, dan digital forensics. Dikembangkan oleh Offensive Security, Kali Linux hadir dengan lebih dari 600 tools keamanan yang sudah terinstall dan dikonfigurasi. Ini adalah operating system yang paling banyak digunakan oleh ethical hacker dan security professional di seluruh dunia.
Setup Kali Linux
# =============================================
# KALI LINUX â Setup & Essential Commands
# =============================================
# Download Kali Linux dari: https://www.kali.org/get-kali/
# Opsi instalasi:
# 1. VM Image (VirtualBox/VMWare) â paling mudah untuk pemula
# 2. Bootable USB â untuk bare metal installation
# 3. WSL (Windows Subsystem for Linux) â untuk Windows
# 4. Kali NetHunter â untuk Android
# Update system setelah install
sudo apt update && sudo apt upgrade -y
# Install tools tambahan
sudo apt install -y kali-linux-large # Collection populer
sudo apt install -y kali-tools-web # Web app testing
sudo apt install -y kali-tools-network # Network analysis
sudo apt install -y kali-tools-exploitation # Exploitation tools
# Tools yang WAJIB dikuasai:
# ââââââââââââââââââââââŦââââââââââââââââââââââââââââââââââââ
# â Tool â Fungsi â
# ââââââââââââââââââââââŧââââââââââââââââââââââââââââââââââââ¤
# â Nmap â Port scanning & enumeration â
# â Burp Suite â Web app testing proxy â
# â Metasploit â Exploitation framework â
# â sqlmap â Automated SQL injection â
# â John the Ripper â Password cracking â
# â Hashcat â GPU-accelerated hash cracking â
# â Aircrack-ng â Wireless network auditing â
# â Wireshark â Network packet analysis â
# â Gobuster â Directory/DNS brute-forcing â
# â Nikto â Web server scanner â
# â Hydra â Login brute-force â
# â WPScan â WordPress vulnerability scanner â
# â Recon-ng â Reconnaissance framework â
# â Maltego â OSINT & link analysis â
# ââââââââââââââââââââââ´ââââââââââââââââââââââââââââââââââââ
Lab Environment untuk Latihan
Metasploit.
(Target)
192.168.1.10
SETTING UP YOUR OWN PENTEST LAB
Tujuan: Berlatih penetration testing secara LEGAL di lingkungan sendiri
Required:
- PC/Laptop: RAM minimal 8GB, 50GB free disk
- VirtualBox atau VMWare Workstation (gratis)
VM yang harus diinstall:
1. Kali Linux (attacker machine)
https://www.kali.org/get-kali/
2. Metasploitable 2/3 (vulnerable target)
https://sourceforge.net/projects/metasploitable/
3. DVWA â Damn Vulnerable Web Application
https://github.com/digininja/DVWA
4. OWASP WebGoat
https://owasp.org/www-project-webgoat/
5. VulnHub machines (various difficulty)
https://www.vulnhub.com/
Network Setup:
Kali Linux ââē
(Attacker) Host
192.168.1.5 Only
Net
- Gunakan "Host Only Network" agar terisolasi dari internet
- JANGAN pernah targetkan VM ke internet!
Online Practice Platforms (LEGAL):
- TryHackMe (tryhackme.com) â Pemula sampai menengah
- HackTheBox (hackthebox.com) â Menengah sampai lanjut
- PentesterLab (pentesterlab.com) â Web app focused
- OverTheWire (overthewire.org) â Wargame challenges
- PicoCTF (picoctf.org) â CTF untuk pemula
- CEH (Certified Ethical Hacker) â Sertifikasi entry-level, diakui secara global
- CompTIA PenTest+ â Sertifikasi intermediate untuk pentester
- OSCP (Offensive Security Certified Professional) â Sangat prestisius, berbasis hands-on exam 24 jam
- eJPT (eLearnSecurity Junior Penetration Tester) â Bagus untuk memulai
- GPEN (GIAC Penetration Tester) â Advanced enterprise certification
8. Quiz: Uji Pemahamanmu!
Setelah membaca tutorial di atas, jawablah 5 pertanyaan berikut untuk menguji pemahamanmu tentang Penetration Testing: