๐ ๏ธ CTF Tool Arsenal โ Universal Reference
Kumpulan tools per kategori kompetisi yang universal dan tidak terikat event tertentu. Setiap tool disertai: cara install, command dasar, dan kapan pakainya. Untuk metodologi lengkap, lihat ctf-competition-methodology-strategy. Untuk level kompetisi, lihat hierarchy-ctf-competition-framework.
Tool Tier System
Tier 1 = Default, langsung jalan, minimal setup. Tier 2 = Spesifik, butuh instalasi. Tier 3 = Advanced, butuh waktu/sumber daya besar. Gunakan Tier 1 dulu โ jika gagal, baru Tier 2, lalu Tier 3.
Daftar Isi
- Universal โ Semua Kategori
- Digital Forensic
- Network Forensic
- Memory Forensic
- Binary Exploitation (PWN)
- Web Exploitation
- Cryptography
- Reverse Engineering
- Steganography
- OSINT
- Attack Defense โ Hardening & Monitoring
- Incident Response
- Scripting & Automation
- Environment Setup โ Docker Images
Universal โ Semua Kategori
๐งฐ CyberChef (Tier 1)
Tool paling serbaguna di CTF. Buka di browser โ tidak perlu install.
| Fungsi | Recipe |
|---|---|
| Auto-detect encoding | Magic โ biarkan CyberChef detect otomatis |
| From Base64 | From Base64 |
| XOR Brute Force | XOR Brute Force โ coba semua key length 1-4 |
| Extract strings | Extract Strings |
| Hex dump | To Hex / From Hex |
| ROT13 | ROT13 โ atau ROT Brute Force |
| JSON/XML format | Syntax Highlighter |
| Regex extract | Regular expression โ CTF\{[^}]+\} |
Install: https://gchq.github.io/CyberChef/ (web) atau
docker run --rm -p 8080:80 ghcr.io/gchq/CyberChef:latest
๐งฐ Command Line Essentials (Tier 1 โ already installed)
file # Cek tipe file
strings -n 6 # Extract string minimal 6 karakter
xxd | head # Hex dump
hexdump -C # Canonical hex dump
head/tail # Baca awal/akhir file
wc -l # Hitung baris
sort | uniq -c # Unique sort + count
grep -r # Cari string recursif
sed -n '10,20p' # Print line range
awk '{print $1}' # Column extraction
diff # Bandingkan dua file
sha256sum # Hash verification
base64 # Encode/decode base64
tr # Character translation
od # Octal/hex dump alternatifDigital Forensic
๐ฝ Sleuth Kit (Tier 1)
Tool suite analisis filesystem โ wajib install.
| Command | Fungsi | Contoh |
|---|---|---|
mmls image.dd | List partition table | Identifikasi offset partisi |
fls -o OFFSET image.dd | List file dalam partisi | Cari file yang ada + deleted |
icat -o OFFSET image.dd INODE | Extract file by inode | Baca file spesifik |
istat -o OFFSET image.dd INODE | Metadata inode | Timestamp, size, permission |
srch_strings -o OFFSET image.dd | Strings dalam partisi | Cari flag di partisi mentah |
fsstat -o OFFSET image.dd | Filesystem statistics | Informasi detail filesystem |
Install:
sudo apt install sleuthkit/brew install sleuthkit
๐ฝ Autopsy (Tier 2)
GUI framework forensik โ wrapper Sleuth Kit dengan timeline + keyword search.
Install:
sudo apt install autopsyatau download dari https://www.autopsy.com/
๐ฝ Foremost (Tier 1)
File carving berdasarkan magic bytes signature. Recover file yang dihapus.
foremost -T -i evidence.dd -o output/Install:
sudo apt install foremost
๐ฝ Scalpel (Tier 2)
File carving yang lebih configurable daripada foremost.
# Edit /etc/scalpel/scalpel.conf dulu โ uncomment file types yang dicari
scalpel evidence.dd -o output/Install:
sudo apt install scalpel
๐ฝ Photorec / TestDisk (Tier 1)
PhotoRec = carving media (foto, dokumen). TestDisk = partition recovery.
sudo photorec /path/to/image.dd # Interactive โ pilih destination
testdisk /path/to/image.dd # Recover partition tableInstall:
sudo apt install testdisk
๐ฝ Binwalk (Tier 1)
Ekstrak embedded file dari firmware/image/binary.
binwalk -Me firmware.bin # Extract semua embedded file recursive
binwalk -Me file # Auto extract ke folder _file.extracted/Install:
pip install binwalkatausudo apt install binwalk
๐ฝ Plaso / log2timeline (Tier 3)
Timeline analysis โ buat timeline dari semua file dalam image. Output ke Elasticsearch atau CSV.
log2timeline --storage timeline.plaso evidence.dd
psort -o l2tcsv -w timeline.csv timeline.plasoInstall:
pip install plasoataudocker run log2timeline/plaso
๐ฝ Registry Analyzer โ regripper (Tier 2)
Windows Registry analysis.
# Extract registry dari image
icat -o OFFSET image.dd INODE > SYSTEM
# Parse dengan regripper
rip.pl -r SYSTEM -f systemInstall:
git clone https://github.com/keydet89/RegRipper3.0
๐ฝ Windows Artifact Analysis
# Prefetch parser (PECmd)
PECmd.exe -f C:\Windows\Prefetch\*.pf --csv output.csv
# Jump List parser (JLECmd)
JLECmd.exe -f "C:\Users\user\AppData\...\*.automaticDestinations-ms"
# Recent file parser (RECmd)
RECmd.exe --dv C:\Users\user\ --nl output.csvSumber: Eric Zimmerman tools โ https://ericzimmerman.github.io/
Network Forensic
๐ Wireshark / TShark (Tier 1)
Wajib untuk PCAP analysis.
# Statistik capture
capinfos capture.pcap
# Filter + export HTTP objects
tshark -r capture.pcap --export-objects http,output/
# Follow TCP stream โ cari flag
tshark -r capture.pcap -z follow,tcp,ascii,0
# Cari DNS query tertentu
tshark -r capture.pcap -Y "dns.qry.name contains flag"
# HTTP request dengan method GET
tshark -r capture.pcap -Y "http.request.method == GET"
# Export file via SMB
tshark -r capture.pcap --export-objects smb,output/๐ Tcpdump (Tier 1 โ already installed)
Live capture + analisis.
# Capture ke file
tcpdump -i eth0 -w capture.pcap
# Baca file dengan filter
tcpdump -r capture.pcap -X
# Filter port dan protocol
tcpdump -r capture.pcap port 80 or port 443๐ NetworkMiner (Tier 2)
GUI network forensic tools โ extract file dari PCAP secara otomatis.
Install: Download dari https://www.netresec.com/?page=NetworkMiner Linux:
mono NetworkMiner.exe -r capture.pcap
๐ Zeek / Bro (Tier 3)
Network monitoring framework โ log semua koneksi.
zeek -r capture.pcap
# Output: conn.log, dns.log, http.log, ssl.log, etc.
cat conn.log | zeek-cut uid proto service durationInstall:
sudo apt install zeek
Memory Forensic
๐ง Volatility 3 (Tier 1)
Tool utama memory forensic. Versi 3 adalah rewrite Python โ tidak butuh profile.
# Info image
python3 vol.py -f memory.raw windows.info
# Process list
python3 vol.py -f memory.raw windows.psscan
# Network connections
python3 vol.py -f memory.raw windows.netscan
# Command line history per process
python3 vol.py -f memory.raw windows.cmdline
# Cari hidden/malicious process
python3 vol.py -f memory.raw windows.malfind
# Registry hive di memory
python3 vol.py -f memory.raw windows.registry.hivelist
# Hashdump (SAM + SYSTEM)
python3 vol.py -f memory.raw windows.hashdump
# Dump specific process memory
python3 vol.py -f memory.raw windows.dumpfiles --pid 1234
# Strings dari memory โ cari flag
python3 vol.py -f memory.raw windows.strings --string "flag" --pattern "CTF"Install:
git clone https://github.com/volatilityfoundation/volatility3
๐ง LiME (Tier 2)
Acquire RAM dump dari Linux.
# Compile kernel module
git clone https://github.com/504ensicsLabs/LiME
cd LiME/src && make
# Dump RAM
insmod lime.ko "path=/tmp/ram.dump format=lime"๐ง WinPmem (Tier 2)
Acquire RAM dump dari Windows (live).
winpmem_mini_x64_rc2.exe memory.raw๐ง Rekall (Tier 3)
Alternatif Volatility โ fokus ke live analysis.
Install:
pip install rekall
Binary Exploitation (PWN)
๐ง pwntools (Tier 1)
Python framework untuk exploit development. Wajib.
from pwn import *
# Koneksi remote
r = remote('host', port)
r.sendline(b'payload')
r.recvuntil(b'flag:')
flag = r.recvline()
print(flag)
# Local binary
e = ELF('./binary')
offset = cyclic_find('aaaabaaacaaa') # Cari offset
# ROP chain
rop = ROP(e)
rop.call('system', [next(e.search(b'/bin/sh'))])Install:
pip install pwntools
๐ง checksec (Tier 1)
Cek security protection binary.
checksec --file=binary
# Output: NX, PIE, RELRO, Stack Canary, ASLRInstall:
pip install pwntools(include)
๐ง GDB + pwndbg (Tier 1)
Debugger dengan plugin pwn.
gdb -q ./binary
# pwndbg commands:
# cyclic 200 โ generate pattern
# run โ jalankan binary
# pattern offset โ cari offset ke RIP
# vmmap โ lihat memory mappingInstall:
sudo apt install gdb+git clone https://github.com/pwndbg/pwndbg
๐ง Ghidra (Tier 2)
Decompiler + disassembler dari NSA. Best-in-class untuk reverse + patch.
# Headless mode โ export decompiled C
./ghidraRun headless /tmp/project -import binary -postScript DecompileToCSource.javaInstall: Download dari https://ghidra-sre.org/
๐ง ROPgadget (Tier 1)
Cari ROP gadgets dalam binary.
ROPgadget --binary binary
ROPgadget --binary binary --ropchain # Auto generate ROP chainInstall:
pip install ROPgadget
๐ง one_gadget (Tier 2)
Cari one-shot RCE (execve(โ/bin/shโ)) di libc.
one_gadget /lib/x86_64-linux-gnu/libc.so.6Install:
gem install one_gadget(Ruby required)
Web Exploitation
๐ Burp Suite (Tier 1)
Proxy intercept + repeater + intruder. Wajib.
| Fitur | Fungsi |
|---|---|
| Proxy | Intercept HTTP/HTTPS request |
| Repeater | Send ulang request dengan modifikasi |
| Intruder | Brute force parameter, fuzzing |
| Decoder | URL/Base64/hex encode-decode |
Install: Download Community Edition dari https://portswigger.net/burp
๐ gobuster (Tier 1)
Directory/file discovery.
gobuster dir -u http://target -w /usr/share/wordlists/dirb/common.txt
gobuster dir -u http://target -w wordlist.txt -x php,html,txt
gobuster dns -d target.com -w subdomains.txtInstall:
sudo apt install gobuster
๐ ffuf (Tier 1)
Parameter fuzzing โ cepat, multi-threaded.
# Directory fuzzing
ffuf -u http://target/FUZZ -w wordlist.txt
# Parameter fuzzing
ffuf -u http://target/page?FUZZ=test -w params.txt
# Value fuzzing
ffuf -u http://target/page?param=FUZZ -w values.txt
# POST data fuzzing
ffuf -u http://target/login -X POST -d "user=FUZZ&pass=test" -H "Content-Type: application/x-www-form-urlencoded" -w users.txtInstall:
go install github.com/ffuf/ffuf@latest
๐ sqlmap (Tier 1)
SQL Injection automation.
# Auto-detect + extract DB
sqlmap -u "http://target/?id=1" --batch --dump
# Request from file (dari Burp)
sqlmap -r request.txt --batch --dump
# Bypass WAF
sqlmap -u "http://target/?id=1" --tamper=space2comment --batch
# OS shell
sqlmap -u "http://target/?id=1" --os-shellInstall:
sudo apt install sqlmap
๐ curl / wget (Tier 1 โ already installed)
# Basic GET
curl -v http://target:port
# POST data
curl -X POST -d "user=admin&pass=admin" http://target/login
# With cookies
curl -b "session=abc123" http://target/dashboard
# Follow redirect
curl -L http://target
# Save response
curl -o output.html http://target๐ jwt_tool (Tier 2)
JWT analysis + attack.
# Decode JWT
jwt_tool token.jwt
# None algorithm attack
jwt_tool token.jwt -X a
# Brute key
jwt_tool token.jwt -C -d wordlist.txtInstall:
git clone https://github.com/ticarpi/jwt_tool
๐ git-dumper (Tier 2)
Extract exposed .git repository.
git-dumper http://target/.git/ output/Install:
pip install git-dumper
Cryptography
๐ CyberChef Magic (Tier 1)
Deteksi encoding/encryption otomatis. Tanpa install โ web.
Recipe:
Magicโ pilih intensitas (High untuk brute force singkat)
๐ RsaCtfTool (Tier 2)
Automated RSA attack.
# Dari modulus n, exponent e, ciphertext c
python RsaCtfTool.py -n 123456 -e 65537 --uncipher 987654
# Dari dua key dengan common prime
python RsaCtfTool.py --key key1.pub --key key2.pub
# Attack modes: wiener, smallfraction, commonfactor, hastad, etcInstall:
git clone https://github.com/RsaCtfTool/RsaCtfTool
๐ xortool (Tier 1)
XOR key length detection + brute force.
# Cari key length
xortool cipher.bin
# Brute dengan key length tertentu
xortool cipher.bin -l 5 -bInstall:
pip install xortool
๐ hash-identifier (Tier 1)
Identifikasi tipe hash.
hashid hash.txt
hash-identifier 5d41402abc4b2a76b9719d911017c592
# Output: MD5Install:
sudo apt install hashid hash-identifier
๐ hashcat (Tier 2)
GPU-accelerated hash cracking.
# MD5 brute force
hashcat -m 0 -a 3 hash.txt ?a?a?a?a?a?a
# SHA256 with wordlist
hashcat -m 1400 hash.txt wordlist.txt
# NTLM with rules
hashcat -m 1000 hash.txt wordlist.txt -r /usr/share/hashcat/rules/best64.ruleInstall:
sudo apt install hashcatatau download dari https://hashcat.net/
๐ John the Ripper (Tier 1)
CPU-based hash cracking.
# Auto-detect hash type
john hash.txt
# With wordlist
john --wordlist=wordlist.txt hash.txt
# Show cracked
john --show hash.txtInstall:
sudo apt install john
๐ OpenSSL (Tier 1 โ already installed)
# Decrypt RSA
openssl rsautl -decrypt -inkey private.pem -in ciphertext.bin
# Base64 decode
openssl enc -base64 -d -in encoded.txt
# AES decrypt
openssl enc -aes-256-cbc -d -in encrypted.bin -out decrypted.txt -pass pass:keyReverse Engineering
๐ strings / file (Tier 1 โ already installed)
strings binary | grep -i flag
file binary๐ Ghidra (Tier 2)
Decompiler paling kuat dari NSA. Headless mode:
./ghidraRun headless /tmp/project -import binary -postScript DecompileToCSource.java๐ radare2 / cutter (Tier 1)
CLI + GUI disassembler/decompiler.
# Analyze binary
r2 binary
> aaaa # Full analysis
> afl # List functions
> pdb @ main # Debug main function
> V # Visual mode
# Cutter = GUI version of radare2
cutter binaryInstall:
sudo apt install radare2 cutter
๐ objdump / readelf (Tier 1 โ already installed)
# Disassemble
objdump -d binary | head -100
# Sections
objdump -x binary
# Symbols
nm binary | grep -i flag
# ELF info
readelf -a binary | head -50๐ dnSpy / ILSpy (Tier 2 โ Windows)
.NET decompiler. Buka .NET DLL/EXE langsung.
Install: https://github.com/dnSpy/dnSpy
Steganography
๐ผ๏ธ zsteg (Tier 1)
Deteksi steganografi PNG/BMP.
zsteg image.png
zsteg -a image.png # Extended analysisInstall:
gem install zsteg
๐ผ๏ธ steghide (Tier 1)
JPEG/BMP steganography.
# Extract data
steghide extract -sf image.jpg
# With passphrase
steghide extract -sf image.jpg -p password
# Info
steghide info image.jpgInstall:
sudo apt install steghide
๐ผ๏ธ stegsolve (Tier 2)
GUI steganography tool โ plane analysis, LSB, bit shift, color filter.
java -jar stegsolve.jarInstall: Download dari https://github.com/zardus/ctf-tools/blob/master/stegsolve/install
๐ผ๏ธ binwalk (Tier 1)
Cari file embedded dalam image.
binwalk -Me image.png # Extract embedded files๐ผ๏ธ exiftool (Tier 1)
Metadata extraction.
exiftool image.jpg
# Cek: GPS, author, software, comment, timestampsInstall:
sudo apt install exiftool
๐ผ๏ธ Audacity / Sonic Visualiser (Tier 2)
Audio steganography โ spectrogram, reverse audio, hidden channel.
Install:
sudo apt install audacity
OSINT
๐ Google Dorking (Tier 1)
site:target.com "flag" OR "ctf"
site:pastebin.com "nama_kompetisi"
filetype:pdf "nama_tim"๐ exiftool (Tier 1)
exiftool -a image.jpg # Semua metadata termasuk GPS๐ theHarvester (Tier 2)
Email/subdomain discovery.
theHarvester -d target.com -b googleInstall:
sudo apt install theharvester
Attack Defense โ Hardening & Monitoring
๐ก๏ธ Nmap (Tier 1)
# Scan semua port
nmap -p- target
# Service detection
nmap -sV -p 80,443 target
# OS detection
nmap -O target
# Script scan
nmap --script=vuln target๐ก๏ธ iptables / nftables (Tier 1)
# Allow specific port
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -j DROP # Drop all other
# Rate limit (10 req/detik)
iptables -A INPUT -p tcp --dport 80 -m limit --limit 10/s -j ACCEPT
# Save rules
iptables-save > /etc/iptables/rules.v4๐ก๏ธ fail2ban (Tier 1)
# Install & start
sudo apt install fail2ban
sudo systemctl enable --now fail2ban
# Custom jail
cat /etc/fail2ban/jail.local
[sshd]
enabled = true
maxretry = 3
bantime = 3600๐ก๏ธ Lynis (Tier 2)
System security audit.
sudo lynis audit systemInstall:
sudo apt install lynis
Incident Response
๐จ Sysinternals Suite (Tier 1 โ Windows)
# List running processes
pslist.exe
# Autoruns โ startup programs
autorunsc.exe -a
# Process explorer โ detailed process info
procexp.exe
# TCP connections
tcpview.exe
# Handle viewer
handle.exe๐จ Wazuh (Tier 3)
Open source SIEM + EDR.
Install:
docker-compose up -d(https://documentation.wazuh.com/)
๐จ YARA (Tier 2)
Malware classification rules.
# Scan dengan rule
yara rule.yar suspicious_file
# Cari rule untuk malware tertentu
git clone https://github.com/Yara-Rules/rulesInstall:
sudo apt install yara
๐จ Sigma (Tier 2)
Generic SIEM detection rule.
# Convert Sigma rule ke format SIEM
sigmac -t splunk rule.yml
sigmac -t elk rule.ymlInstall:
pip install sigma(https://github.com/SigmaHQ/sigma)
Scripting & Automation
๐ Python (Tier 1 โ already installed)
Template script untuk kompetisi:
#!/usr/bin/env python3
import sys, os, re, subprocess, socket, requests, json, base64, hashlib, struct
from pwn import * # Jika pwntools terinstall
def get_flag(input_data):
"""Template fungsi extract flag"""
match = re.search(r'CTF\{[^}]+\}', input_data)
return match.group(0) if match else None
def solve():
"""Main solve function"""
# Read file
with open('attachment', 'r') as f:
data = f.read()
flag = get_flag(data)
print(f"Flag: {flag}")
if __name__ == '__main__':
solve()๐ Bash one-liners
# Cari flag recursive โ semua file
grep -roE "CTF\{[^}]+\}" .
# Cari flag dalam file โ case insensitive
grep -ri "flag\|ctf\|key\|secret" .
# Cari base64 string dalam binary
strings file | grep -E "^[A-Za-z0-9+/]{32,}={0,2}$"
# Cari URL dalam file
grep -oE 'https?://[^ ]+' file
# Cari IP address
grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' file
# Recursive extract archive
for f in *.zip; do unzip -o "$f"; done
# Base64 decode inline
echo "ZmxhZ..." | base64 -dEnvironment Setup โ Docker Images
Image Docker yang siap pakai untuk CTF lab:
# Kali Linux โ semua tools terinstall
docker pull kalilinux/kali-rolling
docker run -it kalilinux/kali-rolling
# Di dalam: apt update && apt install kali-linux-headless
# CTF Platform lokal (FBCTF, CTFd)
docker run -d -p 8000:8000 ctfd/ctfd
# Tool-specific containers
docker run --rm -it remnux/remnux:latest # Reverse engineering + malware analysis
docker run --rm -it ctfhub/base # CTFHub base environment
# Multi-tool container
docker pull python:3.11-slim
docker run -it python:3.11-slim bash
pip install pwntools requests pycryptodomeCross-Link
- Methodology & Strategy โ ctf-competition-methodology-strategy
- Hierarchy Level Kompetisi โ hierarchy-ctf-competition-framework
- Digital Evidence Acquisition โ hierarchy-digital-evidence-acquisition
- Attack-Defense Range โ hierarchy-cyber-range-adversary-emulation
- PicoCTF Beginner Guide โ picoctf-master-index
- Master Index โ master-index
CTF Tool Arsenal Universal ยท Tier 1 โ Tier 3 per Kategori ยท Belajar dulu command dasarnya, baru tool canggih ยท Environment Setup = Hari Pertama, Tool Mastery = Selamanya