Skill Map Tim Indonesia — Cyber SEA Game 2026

Bangkok, 26–27 Okt 2026 · Jeopardy · tanpa AI · tool open-source · diperbarui 12 Okt 2026 · format flag CSG_FLAG{...}

AnggotaPeranTanggung jawabSkillReferensiProgres
SemuaFondasi bersamaWajib dikuasai semua anggota sebelum masuk ke kategori masing-masing.11 (7 wajib)420/11
AlfeeWeb + MISCOwner Web Exploitation & MISC (lab live VPN, privesc Linux) · bantu OSINT · backup Crypto · coach CTF untuk anggota lain.15 (9 wajib)550/15
DanteForensics + StegoOwner Forensics (Windows DFIR, memory) & Steganography · backup Network (ekstraksi file pcap).16 (9 wajib)610/16
SalahCrypto + REOwner Reverse Engineering (PE Windows, malware/C2, packer) & Cryptography · backup Web.16 (12 wajib)710/16
SooryaNetwork + OSINT + OTOwner Network (AD/Kerberos/NTLM, covert channel), OSINT & OT (RFID, CAN) · backup Forensics log & Stego.16 (12 wajib)690/16
Cara pakai: pilih tab anggota · centang kotak di kiri skill bila sudah dikuasai (tersimpan di browser ini) · Soal = kerjakan · Writeup = baca pembahasan · Belajar = materi/tutorial · ✔ link dicek terbuka · ? belum diverifikasi.
Prinsip tim: tool dulu, coding belakangan — utamakan CyberChef, GUI (dnSpy, Wireshark, Autopsy), dan tool otomatis (RsaCtfTool, stegseek). Soal picoGym dicari namanya di CyLab Challenge Library. ⚠ Jangan copy-paste command dari writeup tanpa membaca; beberapa halaman writeup CTFtime diketahui berisi instruksi tersembunyi. Jalankan file soal di VM.

Semua — Fondasi bersama

Wajib dikuasai semua anggota sebelum masuk ke kategori masing-masing.

Cara kerja Jeopardy CTF, format jawaban & mindset CTF

Wajib Dasar

Kenapa: Tiga dari empat anggota sudah profesional security tetapi belum pernah ikut CTF. Jeopardy CTF berbeda dengan pentest: targetnya jawaban yang tepat, bukan laporan. Format flag lomba ini adalah CSG_FLAG{...}, tetapi sebagian soal meminta jawaban polos, misalnya string hash, koordinat, alamat IP, atau path file. Karena itu, baca instruksi format jawaban di setiap soal sebelum submit. Soal sering berantai lintas kategori: hasil satu langkah (password, key, file) menjadi bahan langkah berikutnya, kadang di kategori lain. Poin dinamis berarti soal mudah harus diselesaikan secepatnya. Baca deskripsi, judul, dan hint dengan teliti karena kata kunci di sana sering menjadi petunjuk.

Tanpa coding: Simpan perintah grep -rao 'CSG_FLAG{[^}]*}' . untuk mencari flag di semua file, tetapi jangan berhenti di situ: jika soal meminta jawaban polos, flag tidak akan pernah berbentuk CSG_FLAG. Sebelum submit, cek ulang: prefix perlu atau tidak, huruf besar/kecil, spasi, jumlah desimal (untuk koordinat), dan format hash. Catat temuan setengah jadi di papan tim karena bisa menjadi kunci soal lain.

Scoreboard/platform CTFNotepad untuk mencatat instruksi format jawaban per soalgrep -rao 'CSG_FLAG{[^}]*}' .grep -i 'flag'

Bekerja di lab live: OpenVPN + Kali attackbox + Windows/WSL

Wajib Dasar

Kenapa: PC lomba dari panitia memakai Windows + WSL dengan banyak tool sudah terpasang, sedangkan sebagian soal berupa target live yang hanya bisa dijangkau lewat VPN dan attackbox Kali. Waktu yang habis karena gagal konek VPN, bingung pindah file antara Windows, WSL, dan attackbox, atau lupa cara ssh/nc adalah poin yang hilang. Semua anggota harus bisa: menjalankan koneksi OpenVPN dari file .ovpn dan mengecek bahwa koneksi aktif, login ssh ke attackbox atau target, terhubung ke service dengan nc atau openssl s_client, memindahkan file (scp, python3 -m http.server + wget/curl), dan berpindah antara Windows dan WSL.

Tanpa coding: Buat kartu 'checklist konek' 5 langkah: (1) jalankan VPN, biarkan jendelanya terbuka; (2) cek ada interface tun0 atau IP VPN; (3) ping atau nmap -Pn ke target; (4) ssh/nc ke service; (5) jika putus, matikan lalu sambung ulang VPN sebelum curiga ke soal. Untuk WSL, cukup hafal: drive C: ada di /mnt/c/, folder WSL bisa dibuka dari Explorer lewat \\wsl$, dan explorer.exe . membuka folder aktif. Latih semuanya minimal sekali di TryHackMe sebelum berangkat.

openvpn --config file.ovpn (atau OpenVPN GUI di Windows)ip a / ip route (cek interface tun0)ping / nmap -Pn (cek target terjangkau)ssh / scpnc (netcat)openssl s_client -connect host:portpython3 -m http.server + wget/curlwsl, wsl -l -v, /mnt/c/, \\wsl$, explorer.exe .

Linux CLI esensial untuk CTF (file, strings, grep, xxd, find, pipe)

Wajib Dasar

Kenapa: Baik di WSL pada PC lomba maupun di attackbox Kali, langkah pertama di Forensics, Stego, RE, Network, dan soal live dikerjakan lewat terminal. Yang wajib lancar: navigasi direktori, file, strings, grep, xxd/hexdump, find, pipe (|), redirect (>), izin file (ls -l, chmod), dan ekstraksi arsip berlapis (unzip, tar, 7z, xz, gzip, bzip2).

Tanpa coding: Cukup hafalkan sekitar 15 pola perintah siap pakai, misalnya strings -n 6 file | grep -i flag, find / -name '*flag*' 2>/dev/null, find / -perm -4000 2>/dev/null, dan xxd file | head. Untuk file bernama aneh seperti '-', pakai cat ./- . Tulis di kartu contekan, tidak perlu belajar scripting bash.

filestringsgrepxxdhexdumpfindhead/tailbase64unzip/tar/7z/xz/gzip/bzip2ls -la / chmod

Mahir CyberChef (Magic, recipe, From Base64/Hex, XOR, versi offline)

Wajib Dasar

Kenapa: CyberChef adalah tool 'tanpa kode' yang paling berguna untuk Crypto pemula, Encoding, Stego ringan, Forensics, dan mendekripsi data hasil RE (XOR, RC4, AES dengan key yang ditemukan). Operasi Magic dapat menebak encoding berlapis. Recipe bisa disimpan dan dipakai lagi. CyberChef berjalan sepenuhnya di browser dan dapat diunduh untuk dipakai offline sebagai cadangan.

Tanpa coding: Cek apakah PC panitia sudah menyediakan CyberChef, dan siapkan salinan lokal (link download di pojok kiri atas aplikasi) sebagai cadangan. Simpan recipe favorit, misalnya 'From Base64 -> From Hex -> ROT13' atau 'From Hex -> AES Decrypt', sebagai teks JSON di catatan.

CyberChef (web & salinan lokal)MagicFrom Base64/Hex/BinaryXOR / XOR Brute ForceRC4 / AES DecryptROT13/ROT47Render ImageExtract Files

Workflow triase file universal

Wajib Dasar

Kenapa: Hampir semua soal Forensics, Stego, RE, dan Network dimulai dari 'ini file apa?'. Gunakan checklist yang sama setiap kali: file, lalu exiftool, lalu strings | grep, lalu xxd (cek magic bytes/header), lalu binwalk (file tersembunyi atau data yang ditempel di akhir file), lalu tool khusus sesuai tipe. Cara ini mencegah anggota baru bingung harus mulai dari mana, dan metadata sering langsung berisi petunjuk.

Tanpa coding: Cetak checklist 6 langkah tersebut lalu tempel di meja. Ikuti urutannya secara mekanis sebelum mencari ide lain. Ingat bahwa ekstensi bisa palsu dan header bisa sengaja dirusak: bandingkan magic bytes dengan daftar signature file. Flag juga bisa dipecah ke beberapa bagian file.

fileexiftoolstringsxxdbinwalkforemost7zpngcheckzsteg/steghideWireshark (untuk .pcap)

Mengenali encoding (base64/32/58, hex, URL, ROT13/47, biner, morse, Unicode escape)

Wajib Dasar

Kenapa: Soal Crypto, Stego, dan deobfuscation pemula sering hanya berupa encoding berlapis. Cukup dengan mengenali ciri-cirinya, soal bisa selesai dalam beberapa menit, dan ini penting karena poin dinamis menghargai kecepatan. Contoh ciri: base64 diakhiri '=', base32 hanya berisi A-Z2-7, hex hanya 0-9a-f, URL encoding memakai %xx, Unicode escape memakai \uXXXX, morse terdiri dari titik dan strip. Teks yang terbalik juga sering dipakai sebagai lapisan.

Tanpa coding: Buat tabel contekan 'ciri-ciri, lalu encoding, lalu operasi CyberChef' satu halaman. Jika tidak yakin, masukkan teks ke Magic di CyberChef dengan Intensive mode, atau coba dCode Cipher Identifier jika internet tersedia. Tetap latih pengenalan manual sebagai cadangan.

CyberChefbase64 / base32 (CLI)xxd -r -prevcryptiidCode Cipher Identifier

Workflow tim saat ditekan waktu (triase, timebox, papan bersama, soal berantai)

Wajib Menengah

Kenapa: Dengan poin dinamis dan tim beranggotakan 4 orang, soal mudah di semua kategori harus diambil secepatnya. Setiap anggota memegang kategori utama dan cadangan. Terapkan timebox, misalnya 20–30 menit, lalu minta bantuan atau pindah soal. Karena soal sering berantai lintas kategori, papan bersama (judul soal | pemegang | status | temuan: password, key, IP, file) sangat penting agar temuan satu orang langsung bisa dipakai orang lain dan tidak ada dua orang mengerjakan soal yang sama.

Tanpa coding: Lakukan latihan simulasi minimal 2 kali, misalnya mini-CTF 3 jam di picoGym atau CTFlearn. Di 10 menit pertama, semua anggota membaca daftar soal dan menandai yang terlihat mudah, sementara satu orang memastikan VPN dan akses lab sudah jalan. Tentukan satu orang yang bergiliran memantau scoreboard dan mengatur pindah soal.

Papan bersama (whiteboard, kertas, atau file teks bersama)TimerFormat catatan temuan standar

Riset manual tanpa AI & cadangan offline (man, --help, tldr, search operator)

Penting Dasar

Kenapa: Internet kemungkinan tersedia setidaknya sebagian, karena soal OSINT dan sebagian soal lain membutuhkannya. Namun AI tetap dilarang, jadi semua riset harus manual: mesin pencari dengan operator yang tepat, dokumentasi resmi, dan catatan sendiri. Koneksi juga bisa dibatasi atau lambat, jadi tetap siapkan cadangan offline: man, --help, tldr, CyberChef lokal, dan cheatsheet tim.

Tanpa coding: Latihan dua mode: (1) 'riset tanpa AI': selesaikan soal hanya dengan mesin pencari biasa dan operator seperti site:github.com "kata kunci"; (2) 'jam tanpa internet': selesaikan 3 soal Bandit atau picoGym dengan Wi-Fi mati, hanya memakai man, --help, dan catatan sendiri. Pastikan dulu ke panitia apakah file pribadi dan cheatsheet cetak boleh dibawa.

Search operator: "frasa persis", site:, filetype:, -kataman / man -k <kata kunci><tool> --help / -htldr (klien atau PDF tldr-book)CyberChef lokalDokumentasi Python HTML offline

Dasar cracking password/hash dengan john, hashcat & rockyou

Penting Dasar

Kenapa: Hash, ZIP/PDF berpassword, dan /etc/shadow sering muncul di Crypto, Forensics, dan Network. Biasanya cukup serangan wordlist rockyou.txt; kadang soal memberi petunjuk pola password sehingga perlu serangan mask (misalnya diketahui panjang atau awalan). Kali menyertakan rockyou (biasanya di /usr/share/wordlists/, kadang perlu di-gunzip dulu), john beserta zip2john/pdf2john, serta hashcat. Pastikan tool tersedia di PC lomba atau attackbox, karena PC lomba mungkin tidak punya GPU sehingga john di CPU sering sudah cukup.

Tanpa coding: Hafalkan 4 perintah siap pakai: (1) zip2john f.zip > h.txt; john h.txt --wordlist=rockyou.txt, (2) john --show h.txt, (3) hashcat -m 0 -a 0 hash.txt rockyou.txt, (4) hashcat -m 0 -a 3 hash.txt 'CSG?d?d?d?d' untuk mask. Cocokkan bentuk hash dengan halaman Example Hashes untuk memilih mode -m. Ingat: jika soal meminta hash itu sendiri sebagai jawaban, salin persis sesuai format yang diminta.

john + zip2john/rar2john/pdf2johnhashcat (-m mode, -a 0 wordlist, -a 3 mask)hash-identifier / hashid/usr/share/wordlists/rockyou.txt

Literasi Python 'copy-paste' (menjalankan & memodifikasi snippet)

Penting Dasar

Kenapa: Tidak ada anggota yang kuat coding. Namun soal Crypto, RE, Network, dan Web sering menyertakan script Python atau membutuhkan script pendek, misalnya XOR, membalik algoritma sederhana, mengirim request, atau berinteraksi dengan service nc. Library Python boleh dipakai (kecuali AI/ML). Targetnya bukan menulis kode dari nol, cukup bisa menjalankan python3 script.py di WSL atau attackbox, mengganti nilai variabel, membaca traceback, dan menyusun snippet dari catatan pribadi.

Tanpa coding: Siapkan folder 'snippets' berisi 10–15 template berkomentar Bahasa Indonesia, misalnya XOR dengan key, decode base64 berulang, brute-force Caesar, request GET/POST, koneksi ke service nc dengan pwntools, AES decrypt dengan key/IV, membaca file biner, dan long_to_bytes untuk RSA. Saat lomba cukup ganti nilai di baris yang diberi tanda '# UBAH DI SINI'.

python3pip (cek paket yang sudah terpasang)pwntools (remote/recvuntil/sendline)requestspycryptodome (AES/RC4)Dokumentasi Python offline (HTML)

Membaca writeup secara efektif & membangun catatan/cheatsheet tim

Penting Dasar

Kenapa: Karena AI dilarang dan internet mungkin terbatas, catatan pribadi menjadi alat riset tercepat. Writeup soal pemula dari CTF lain menunjukkan pola yang berulang. Bacalah secara aktif: catat tipe soal, petunjuk awal, tool yang dipakai, perintah persisnya, dan format jawaban akhirnya, lalu masukkan ke cheatsheet per kategori.

Tanpa coding: Pakai template catatan per soal: 'Kategori | Ciri-ciri soal | Langkah 1-2-3 | Perintah persis | Format jawaban | Sumber'. Simpan dalam satu folder markdown supaya bisa dicari dengan grep -ri 'zip' notes/ saat lomba. Tanyakan ke panitia apakah materi cetak atau file pribadi boleh dibawa; jika tidak, cetak versi ringkasnya.

CTFtime WriteupsObsidian/CherryTree/markdown lokalgrep -ri untuk mencari catatan sendiriPDF/HTML hasil simpan

Alfee — Web + MISC

Owner Web Exploitation & MISC (lab live VPN, privesc Linux) · bantu OSINT · backup Crypto · coach CTF untuk anggota lain.

Path traversal dengan filter non-rekursif

Wajib Dasar

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): parameter nama file yang hanya menghapus ../ sekali, sehingga bisa dilewati dengan urutan bersarang atau encoding.

Tanpa coding: Mulai dari traversal biasa, lalu coba urutan bersarang yang tetap menjadi ../ setelah filter menghapus satu kali, path absolut, dan URL encoding ganda. Pakai Intruder dengan wordlist LFI bawaan SecLists kalau tidak yakin filter yang dipakai. Target awal yang aman untuk bukti: /etc/passwd, lalu cari file source app atau flag.

Burp Suite Community (Repeater, Intruder)CyberChef (URL encode/double encode)Wordlist LFI dari SecLists

Recon client-side: komentar HTML, file source bocor, bypass validasi dengan DevTools

Wajib Dasar

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): petunjuk sering ada di komentar HTML, file source/memo yang bisa diakses, atau validasi yang hanya dilakukan di browser.

Tanpa coding: Selalu buka View Source dan semua file JS dulu. Cari komentar, endpoint tersembunyi, dan nama file source/backup (misalnya file .py, .bak, .old, robots.txt). Validasi client-side cukup dihapus atau diubah atributnya di Inspector, atau kirim ulang request di Burp tanpa melewati form.

Firefox DevTools (Inspector, Network, Debugger, Storage)View Source (Ctrl+U)Burp Suite Community (Target > Site map)gobuster/ffuf dengan wordlist SecLists

Alur kerja Burp Suite Community (Proxy, Repeater, Intruder, Decoder)

Wajib Dasar

Kenapa: Burp Suite Community sudah terpasang di lingkungan lomba 2026, jadi semua soal web live paling cepat dikerjakan lewat Proxy dan Repeater. Saran lama untuk memakai ZAP sebagai pengganti Burp tidak berlaku lagi.

Tanpa coding: Pakai browser bawaan Burp supaya tidak perlu setting proxy dan sertifikat. Kirim setiap request menarik ke Repeater. Intruder di Community diperlambat, jadi untuk wordlist besar pakai ffuf atau sqlmap. Decoder bisa menggantikan CyberChef untuk encoding sederhana.

Burp Suite CommunityBrowser bawaan Burp (Chromium)OWASP ZAP (cadangan)

Lingkungan live: OpenVPN, attackbox Kali, SSH, dan trik CLI Linux

Wajib Dasar

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): soal MISC dan Web dikerjakan lewat VPN ke attackbox Kali, dengan soal SSH berantai yang menguji trik dasar Linux.

Tanpa coding: Latih koneksi VPN dan SSH sampai lancar sebelum lomba. Hafalkan trik file bernama aneh: nama yang diawali tanda minus dibaca dengan awalan ./ atau pemisah --, nama berspasi diberi tanda kutip, file tersembunyi dilihat dengan ls -la. Pakai tmux supaya sesi tidak hilang saat VPN putus.

openvpnssh/scpncls -la, file, find, grep, difftmux

Membuka arsip berlapis (zip/tar/xz/bz2/gz) dan layanan TLS dengan openssl s_client

Wajib Dasar

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): soal MISC berantai via SSH. xz dan OpenSSL juga tercantum di Approved Tool List 2026.

Tanpa coding: Kerjakan di folder sementara (mktemp -d). Ulangi siklus: jalankan file, ganti ekstensi sesuai hasilnya, ekstrak, lalu file lagi sampai keluar teks. Untuk layanan TLS, sambungkan dengan openssl s_client ke host:port lalu ketik input yang diminta. Kalau koneksi menampilkan RENEGOTIATING, baca bagian CONNECTED COMMANDS di manpage.

filexxd -rgzip/bzip2/xz/tar/unzip/7zopenssl s_clientnmap -sV (cari port TLS)

Mindset CTF vs pentest: berburu flag, format jawaban, dan manajemen waktu

Wajib Dasar

Kenapa: Di lomba yang dicari flag atau jawaban dengan format tertentu, bukan laporan temuan lengkap. Format CSG_FLAG{...} dan jawaban polos (hash, path, IP) harus dicek per soal. Soal juga cenderung berantai.

Tanpa coding: Timebox setiap soal, baca judul dan deskripsi soal sebagai petunjuk, dan langsung cari string flag setelah mendapat akses. Catat setiap kredensial dan path yang ditemukan karena soal berantai biasanya memakainya lagi. Baca instruksi format jawaban sebelum submit.

Burp Suite Communitygrep -r untuk pola flagCatatan bersama timTimer per soal

SQL injection di app web live: auth bypass, UNION, stacked queries

Wajib Menengah

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): app web live yang cukup dikerjakan lewat browser, dengan SQLi sebagai jalur utama ke flag. Pola login bypass juga muncul di writeup publik CSG 2019.

Tanpa coding: Tes dulu manual di Repeater: tanda kutip tunggal, komentar SQL, dan kondisi selalu benar di form login. Untuk UNION, cari jumlah kolom lalu kolom yang tampil di halaman. Kalau polanya jelas, simpan request dari Burp ke file lalu jalankan sqlmap dengan opsi -r. Stacked query hanya jalan di DBMS/driver tertentu, jadi cek dulu jenis database dari pesan error.

Burp Suite Community (Proxy, Repeater)sqlmapFirefox DevToolsPortSwigger SQLi cheat sheet (offline)

Command injection dengan bypass blacklist

Wajib Menengah

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): fitur web yang meneruskan input ke perintah sistem (misalnya tool jaringan) dengan filter karakter sederhana.

Tanpa coding: Uji satu per satu pemisah perintah yang berbeda (titik koma, pipe, newline ter-encode, substitusi perintah) di Repeater. Kalau spasi atau kata tertentu diblokir, ganti dengan alternatif bawaan shell (variabel pemisah, tanda kutip di tengah kata, wildcard). Catat karakter mana yang lolos sebelum mencoba membaca file flag.

Burp Suite Community (Repeater, Intruder)Firefox DevToolsCyberChef (URL encode)Wordlist SecLists

Privesc Linux setelah RCE atau login SSH: SUID, sudo, Python

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026 (lihat 01-prediksi-soal.md): flag sering hanya bisa dibaca root atau user lain, baik setelah RCE di soal web maupun di soal MISC berantai via SSH.

Tanpa coding: Setelah dapat shell, jalankan berurutan: id, sudo -l, cari binary SUID, cek capabilities, lalu cocokkan nama binary di GTFOBins bagian SUID/Sudo/Capabilities. Untuk binary SUID buatan soal, jalankan tanpa argumen dulu dan baca pesan penggunaannya. linpeas berguna kalau jalur cepat tidak ketemu.

find (cari file SUID/SGID)sudo -lGTFOBins (salinan offline)linpeasgetcap

OSINT pendukung: metadata commit git dan secret di git history

Penting Dasar

Kenapa: Prediksi sangat tinggi untuk 2026 (lihat 01-prediksi-soal.md): pivot persona lewat repo publik, termasuk email di commit dan secret yang pernah di-commit lalu dihapus. AI dilarang, jadi semua dikerjakan manual.

Tanpa coding: Clone repo lalu lihat semua commit di semua branch dengan git log --all, termasuk nama dan email author. Pakai git log -p untuk melihat isi perubahan, karena secret biasanya ada di commit lama yang sudah dihapus. Jalankan gitleaks pada repo untuk scan otomatis.

git log / git show / git log -p --allgit reflog dan git branch -agitleaksGitHub web (tambahkan .patch di URL commit)

Awareness NTFS Alternate Data Streams dan RTLO filename spoofing

Penting Dasar

Kenapa: Prediksi sedang sampai tinggi untuk 2026 (lihat 01-prediksi-soal.md): skenario client-side di Windows di mana flag disembunyikan di ADS dan nama file dipalsukan dengan karakter Right-to-Left Override.

Tanpa coding: Setelah dapat akses ke host Windows, cek ADS di folder target dengan dir /r atau Get-Item -Stream *, lalu baca stream yang mencurigakan. Untuk RTLO, lihat nama file dalam hex: kalau ada byte U+202E, ekstensi asli ada di bagian yang tampil terbalik.

dir /r (cmd)Get-Item -Stream * dan Get-Content -Stream (PowerShell)Sysinternals streamsxxd/hexdump untuk melihat karakter U+202E

Salah konfigurasi akun sistem dan escape shell terbatas

Penting Menengah

Kenapa: Prediksi tinggi untuk 2026 (lihat 01-prediksi-soal.md): akun sistem yang bisa di-su, password default/lemah, file konfigurasi yang bisa ditulis, atau shell terbatas yang bisa di-escape.

Tanpa coding: Daftar akun yang punya shell login di /etc/passwd, cek grup yang tidak biasa, cari file konfigurasi atau skrip cron yang bisa ditulis, lalu coba su ke akun sistem dengan password kosong atau sama dengan nama akun. Untuk shell terbatas, cari program yang bisa membuka shell lain (pager, editor) lewat GTFOBins.

cat /etc/passwd dan /etc/groupsufind (file writable)ls -la /etc/sudoers.d, crontabGTFOBins

Fingerprinting versi dan eksploitasi CVE publik (Struts2, Apache, Tomcat, libssh)

Penting Menengah

Kenapa: Prioritas turun untuk 2026 (peluang sedang, lihat 01-prediksi-soal.md), tetapi pola 'well-known vulnerability' ada di writeup publik CSG 2019 dan 2021 dan cepat diselesaikan kalau lab-nya sudah pernah dicoba.

Tanpa coding: Ambil banner dengan nmap -sV atau WhatWeb, cocokkan dengan searchsploit dan modul Metasploit. Latih beberapa CVE di Vulhub supaya saat lomba cukup set target lalu jalankan modul yang sudah ada.

nmap -sVWhatWebsearchsploit (Exploit-DB offline)Metasploit (jika tersedia di attackbox)Docker + Vulhub

Konsep dasar serangan Active Directory (enumerasi, privesc, lateral movement)

Opsional Dasar

Kenapa: Peluang sedang untuk 2026 (lihat 01-prediksi-soal.md): lab live bergaya red-team AD pernah menjadi format di edisi sebelumnya. Cukup pahami alurnya dan tool utamanya.

Tanpa coding: Pahami urutan umum: enumerasi user dan share, cari kredensial lemah atau AS-REP roasting, visualisasikan jalur ke Domain Admin di BloodHound, lalu pindah host dengan kredensial yang didapat. Semua langkah ini berbasis tool, tidak perlu menulis kode.

BloodHound (GUI) + collectorNetExec/CrackMapExecimpacket (jika tersedia di attackbox)evil-winrmkerbrute

Reverse engineering APK Android dasar

Opsional Dasar

Kenapa: Bukan fokus utama prediksi 2026 (RE diprediksi didominasi PE Windows), tetapi pengalaman mobile pentest Alfee membuat soal APK, kalau muncul, paling cepat diselesaikan olehnya.

Tanpa coding: Buka APK di jadx-gui, cari string 'flag', password hardcoded, atau Log.*, lalu cek res/values/strings.xml hasil apktool. Decode string dengan CyberChef.

jadx-guiapktooladb logcatCyberChefGhidra (untuk native .so)

Dante — Forensics + Stego

Owner Forensics (Windows DFIR, memory) & Steganography · backup Network (ekstraksi file pcap).

Pola pikir & triase CTF forensik/stego (flag palsu, flag terpecah, format jawaban)

Wajib Dasar

Kenapa: Di DFIR nyata yang dicari adalah timeline dan bukti utuh. Di CTF yang dicari satu string, soalnya berantai, dan flag sering dipecah ke beberapa tempat (metadata, isi file, ekor file). Sebagian soal minta jawaban polos (hash, path, IP, koordinat), jadi format jawaban wajib dibaca teliti. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Pola berlapis juga terlihat di writeup publik CSG 2019 (PDF-JPGS, Notes, RLO).

Tanpa coding: Buat checklist triase 5 menit untuk setiap file: file, exiftool, strings (cari format flag dan Base64), binwalk, lalu ImHex untuk cek magic byte dan ekor file. Tulis setiap potongan flag atau kata aneh di catatan bersama, karena potongan berikutnya bisa ada di file lain. Verifikasi format flag sebelum submit (waspadai flag palsu). Untuk nama file RLO, lihat nama file dalam hex (karakter E2 80 AE).

filestringsexiftoolbinwalkImHexCyberChef

EXIF/metadata sebagai lokasi flag & petunjuk password (gabungkan jadi password arsip)

Wajib Dasar

Kenapa: Prediksi tinggi di Forensics dan sangat tinggi di Stego untuk 2026, lihat 01-prediksi-soal.md. Metadata bisa langsung berisi flag, atau berisi petunjuk (komentar, artist, GPS, tanggal) yang harus digabung menjadi password untuk arsip berikutnya.

Tanpa coding: Jalankan exiftool -a -u -g1 file untuk menampilkan semua tag termasuk Comment, UserComment, XPComment, Artist, dan GPS. Bandingkan dengan file lain di soal yang sama karena petunjuk bisa tersebar. Kalau ada arsip berpassword, coba kombinasi nilai metadata (misalnya nama + tanggal) secara manual dulu, baru zip2john file.zip > h.txt lalu john --wordlist=rockyou.txt h.txt. Catat semua password yang ditemukan karena sering dipakai ulang di lapisan berikutnya.

exiftoolCyberChef7-Zipjohn + zip2john (jumbo)rockyou.txt (siapkan offline)

Data setelah IEND / arsip ditempel ke JPG & carving file tersembunyi

Wajib Dasar

Kenapa: Prediksi sangat tinggi untuk Stego 2026, lihat 01-prediksi-soal.md. Pola klasik: ZIP atau teks ditempel setelah chunk IEND (PNG) atau penanda FF D9 (JPG), serta file polyglot. Contoh publik ada di CSG 2019 (PDF-JPGS).

Tanpa coding: Di ImHex cari 49 45 4E 44 AE 42 60 82 (IEND PNG) atau FF D9 (akhir JPG). Semua byte setelahnya mencurigakan: pilih sampai akhir file lalu Export selection. binwalk -e dan foremost melakukan carving otomatis. Coba juga buka gambar langsung di 7-Zip, karena 7-Zip sering bisa membaca ZIP yang ditempel. pngcheck -v menunjukkan data tambahan setelah IEND.

binwalkforemostImHex7-ZippngcheckAperi'Solve

Windows DFIR di disk image: E01, NTFS, $MFT, $UsnJrnl, Prefetch, Recycle Bin, Alternate Data Streams

Wajib Menengah

Kenapa: Tipe soal Forensics dengan peluang paling tinggi untuk 2026 (lihat 01-prediksi-soal.md bagian 5 dan 6). Ini wilayah kerja harian Dante, tinggal dilatih agar cepat menemukan satu artefak yang berisi flag atau jawaban (nama file, path, waktu, hash).

Tanpa coding: Buka E01 di FTK Imager (Add Evidence Item), lalu Export Files untuk $MFT, $Extend\$UsnJrnl:$J, folder Prefetch, dan $Recycle.Bin. Parse dengan MFTECmd -f $MFT --csv out, MFTECmd -f $J -m $MFT --csv out, PECmd -d Prefetch --csv out, RBCmd -d $Recycle.Bin --csv out, lalu buka CSV di Timeline Explorer dan filter kolom nama file atau ekstensi. ADS terlihat di FTK Imager sebagai file:stream, atau di Windows dengan dir /r dan Get-Item file -Stream *. Ingat $I di Recycle Bin menyimpan path asli, $R berisi isi file. Untuk image kecil, mmls lalu fls -r -o OFFSET sering lebih cepat dari Autopsy.

FTK ImagerAutopsyThe Sleuth Kit (mmls, fls, icat, istat)EZ Tools: MFTECmd, PECmd, RBCmd, Timeline Explorer, Registry Explorerdir /r, Get-Item -Stream *

Memory dump Windows: strings/grep dulu, lalu Volatility 3 (daftar proses & dump)

Wajib Menengah

Kenapa: Prediksi sangat tinggi untuk 2026, lihat 01-prediksi-soal.md. Pola yang diantisipasi: passphrase atau key ditemukan lewat strings, lalu proses mencurigakan di-dump untuk dianalisis bersama Salah (RE) atau dipakai mendekripsi file lain.

Tanpa coding: Langkah pertama selalu strings -el dan strings biasa ke file teks, lalu cari format flag, kata password, key, http, dan .ps1. Baru setelah itu Volatility 3: windows.info, windows.pslist/pstree, windows.cmdline, windows.netscan, windows.filescan, windows.dumpfiles --virtaddr, dan windows.memmap --pid PID --dump untuk dump proses. Siapkan symbol pack Windows offline sebelum lomba. MemProcFS bisa me-mount dump sebagai drive sehingga file dan proses bisa dijelajahi lewat Explorer.

strings / findstr / grepVolatility 3MemProcFSCyberChef

Analisis log: EVTX & PowerShell, log sandbox Linux (strace) & persistence

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Log PowerShell sering berisi script ter-encode (Base64/XOR) yang menyimpan flag atau key. Log sandbox Linux menunjukkan perintah, file yang dibuat, dan mekanisme persistence.

Tanpa coding: EVTX: buka Microsoft-Windows-PowerShell/Operational dan filter Event ID 4104 (Script Block), juga 4103, Security 4688, dan Sysmon 1/11 kalau ada. Atau EvtxECmd -d folder --csv out lalu cari kata FromBase64String, -enc, IEX di Timeline Explorer. Decode di CyberChef (From Base64, lalu Decode text UTF-16LE). Log strace: grep execve, openat, connect, dan write untuk melihat apa yang dijalankan dan ditulis. Persistence Linux: cek crontab, /etc/cron*, /etc/rc.local, unit systemd, .bashrc, dan authorized_keys (komentar kunci SSH bisa berisi potongan flag).

Event ViewerEvtxECmd + Timeline ExplorerCyberChefgrep / findstrNotepad++

LSB PNG: offset piksel, bit plane tertentu, urutan baris/kolom

Wajib Menengah

Kenapa: Tipe soal Stego dengan peluang sangat tinggi untuk 2026, lihat 01-prediksi-soal.md. Variasi yang perlu diantisipasi: data tidak mulai dari piksel pertama, hanya di satu channel atau satu bit plane, atau dibaca per kolom.

Tanpa coding: Jalankan zsteg -a gambar.png dan perhatikan baris berisi teks terbaca (misalnya b1,r,lsb,xy atau b1,rgb,msb,yx). Kalau ada offset, pakai zsteg -E "b1,rgb,lsb,xy" gambar.png > out.bin lalu buka di ImHex untuk mencari header file di tengah data. Di StegSolve, geser panah untuk melihat setiap bit plane, lalu Analyse > Data Extract untuk memilih channel, bit, dan urutan baris/kolom tanpa coding. Teks nyaris putih terlihat lewat Random colour map atau GIMP Threshold.

zstegStegSolveStegOnlineAperi'SolveGIMP (Levels/Threshold)

Bitstream jadi QR code (susun ulang 0/1 menjadi gambar, baca dengan zbarimg)

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Hasil ekstraksi LSB atau data jaringan sering berupa deretan bit yang panjangnya kuadrat sempurna (misalnya 625 = 25x25, 841 = 29x29), tanda bahwa itu QR code.

Tanpa coding: Hitung panjang bitstream, lalu ambil akar kuadratnya untuk lebar QR (QR versi 1 = 21, versi 2 = 25, versi 3 = 29). Cara tanpa coding: di Notepad++ ganti 1 dengan karakter blok penuh dan 0 dengan spasi, lalu pecah per lebar baris, dan pola QR akan terlihat untuk discreenshot. Alternatif: CyberChef operasi Generate Image (mode Bits, atur pixel per row) lalu Parse QR Code. Cek dulu operasi ini tersedia di CyberChef offline Anda. Kalau zbarimg gagal, coba balik warna (invert) dan tambahkan border putih.

zbarimg (ZBar)CyberChef (Generate Image, Parse QR Code)Notepad++GIMP

Teks & vektor tersembunyi: zero-width Unicode, whitespace, path SVG tersembunyi, palet/alpha PNG

Wajib Menengah

Kenapa: Prediksi sedang tapi murah untuk dikuasai, lihat 01-prediksi-soal.md. Trik ini tidak terlihat di viewer biasa sehingga mudah terlewat kalau tidak ada di checklist.

Tanpa coding: Zero-width: buka teks di ImHex dan cari E2 80 8B/8C/8D atau EF BB BF, lalu pakai decoder unicode steganography offline (simpan halaman 330k). Whitespace: kalau ada dua pola byte (misalnya 20 dan E2 80 83), ganti jadi 0 dan 1 di CyberChef lalu From Binary. SVG: buka di Notepad++ atau Inkscape XML Editor, cari elemen dengan display:none, opacity 0, fill sama dengan background, atau koordinat di luar viewBox. Hapus atribut itu dan teks/path akan muncul. Palet/alpha PNG: di StegSolve atau StegOnline lihat Alpha plane dan coba Random colour map, karena warna palet yang mirip bisa menyembunyikan teks.

ImHexCyberChefNotepad++ (Show All Characters)Inkscape (XML Editor, Objects panel)StegSolve / StegOnlineGIMP

Magic bytes & perbaikan header secara manual di hex (termasuk PNG IHDR/CRC)

Penting Dasar

Kenapa: File rusak atau ekstensi palsu adalah langkah pembuka di banyak soal berantai, baik Forensics maupun Stego. Contoh publik ada di CSG 2019 (Broken Head, PDF-JPGS) dan picoCTF.

Tanpa coding: Hafalkan magic: ZIP 50 4B 03 04, PNG 89 50 4E 47 0D 0A 1A 0A, JPG FF D8 FF E0 (JFIF), PDF 25 50 44 46, GIF 47 49 46 38, MZ 4D 5A. Di ImHex pakai pattern language bawaan untuk PNG/ZIP/BMP agar struktur terlihat. Kalau pngcheck melaporkan CRC error pada IHDR, kemungkinan besar tinggi/lebar gambar diubah. Naikkan nilai height lalu cek apakah gambarnya jadi lengkap.

ImHexfilepngcheckexiftoolTrID

Steghide / Stegseek (password kosong, kata dari soal, wordlist)

Penting Dasar

Kenapa: Prediksi sedang untuk 2026, lihat 01-prediksi-soal.md. Cepat dicoba dan Stegseek bisa membongkar password steghide dari rockyou dalam hitungan detik.

Tanpa coding: Untuk JPG/BMP/WAV, coba dulu steghide extract -sf file -p "" (password kosong). Lalu coba kata dari judul soal, deskripsi, atau metadata EXIF. Kalau gagal, pakai stegseek file rockyou.txt, atau stegseek --seed untuk mendeteksi ada tidaknya data.

steghidestegseekoutguessrockyou.txt

Disk image FAT rusak: perbaikan dengan fsck.fat & pemulihan file

Penting Menengah

Kenapa: Kandidat soal baru 2026 karena fsck.fat masuk daftar tool resmi, lihat 01-prediksi-soal.md bagian 4.2. Peluang sedang sampai tinggi.

Tanpa coding: Selalu kerja di salinan image. Mulai dengan file dan fsstat untuk tahu FAT12/16/32. Kalau tidak bisa di-mount, jalankan fsck.fat -n dulu (hanya membaca, tampilkan masalah), lalu fsck.fat -a atau -y di salinan. Baca output fsck dengan teliti karena nama file atau direktori bisa berisi flag. Kalau boot sector rusak, bandingkan dengan backup boot sector (FAT32 di sektor 6) di ImHex. File terhapus diambil dengan fls -r -d lalu icat, atau PhotoRec.

fsck.fat / fsck.vfat (dosfstools)The Sleuth Kit (fsstat, fls, icat)TestDisk / PhotoRecFTK ImagerImHex

Memory Linux + pemulihan kunci sesi OpenSSH (plugin Volatility 3 fox-it), bersama Soorya

Penting Menengah

Kenapa: Plugin OpenSSH-Session-Key-Recovery ada di daftar tool resmi 2026 tapi belum pernah muncul, jadi kandidat soal baru (lihat 01-prediksi-soal.md). Alurnya: dump memori Linux, ambil kunci sesi SSH, lalu dekripsi trafik SSH di pcap. Dante memegang bagian memori, Soorya bagian pcap.

Tanpa coding: Latih alurnya sebelum lomba di VM: pasang plugin dengan -p path_plugin dan symbol openssh32/openssh64 sesuai README. Mulai dengan linux.pslist dan linux.bash untuk menemukan proses sshd/ssh, lalu jalankan plugin kunci sesi. Volatility Linux butuh symbol kernel (ISF) yang cocok; biasanya disediakan soal, kalau tidak ada coba strings dulu. Serahkan hasil kunci ke Soorya untuk langkah dekripsi pcap dengan tool di repo yang sama.

Volatility 3 (plugin linux.*)fox-it OpenSSH-Session-Key-Recovery (plugin Volatility 3 + symbol openssh64)Wiresharkstrings / grep

Dokumen Office: OOXML (sheet tersembunyi, notes, komentar, metadata) & makro

Penting Menengah

Kenapa: Prediksi sedang untuk 2026, lihat 01-prediksi-soal.md. File docx/xlsx/pptx sebenarnya ZIP, jadi flag bisa ada di sheet tersembunyi, speaker notes, komentar, docProps, atau makro. Contoh publik: CSG 2019 Notes (makro MS Office).

Tanpa coding: Ekstrak file dengan 7-Zip lalu cek: docProps/core.xml dan app.xml (metadata), xl/workbook.xml (sheet dengan state="hidden" atau veryHidden), ppt/notesSlides, word/comments.xml, dan folder media. Di Excel/LibreOffice klik kanan tab sheet lalu Unhide. Untuk makro jalankan oleid lalu olevba --decode, jangan pernah menjalankan makronya.

7-Zipoletools (olevba, oleid, oleobj)exiftoolLibreOfficeCyberChef

Analisis & stego PDF (objek, stream, metadata, lapisan tersembunyi)

Opsional Menengah

Kenapa: Prediksi sedang dan cenderung turun; muncul sebagai kandidat karena qpdf ada di daftar tool resmi 2026 (lihat 01-prediksi-soal.md). Pola umum: data di metadata, stream terkompresi, file lampiran, atau teks tertutup objek lain.

Tanpa coding: Urutannya: exiftool file.pdf (Author, Title, Subject, Keywords), lalu pdfid untuk mendeteksi /EmbeddedFile, /JavaScript, /OpenAction. qpdf --qdf --object-streams=disable in.pdf out.pdf membuat semua stream terbuka dan bisa dibaca di Notepad++. pdf-parser --search atau --object dengan --filter untuk membuka stream tertentu. Teks putih atau tertutup gambar bisa dimunculkan dengan Ctrl+A atau copy-paste.

qpdfpdfidpdf-parserexiftoolbinwalk

Stego audio: spectrogram, Morse, DTMF, SSTV

Opsional Menengah

Kenapa: Prediksi rendah sampai sedang untuk 2026, lihat 01-prediksi-soal.md. Audio juga bisa muncul di soal Network (audio dalam stream RTP), jadi berguna untuk membantu Soorya.

Tanpa coding: Buka file di Sonic Visualiser lalu Layer > Add Spectrogram, karena teks sering muncul di sana. Morse: lihat bentuk gelombang di Audacity, tulis titik/garis, lalu decode di CyberChef. Bunyi bip telepon berarti DTMF (multimon-ng). Bunyi seperti modem biasanya SSTV: putar ke QSSTV atau RX-SSTV.

Sonic VisualiserAudacityQSSTV / RX-SSTVmultimon-ng (DTMF)CyberChef (From Morse Code)

Salah — Crypto + RE

Owner Reverse Engineering (PE Windows, malware/C2, packer) & Cryptography · backup Web.

Triage file biner dan unpacking cepat (Detect It Easy, strings/FLOSS, UPX -d, deteksi Go/.NET/PyInstaller)

Wajib Dasar

Kenapa: Langkah pertama di setiap soal RE: menentukan apakah file berupa PE x86/x64, biner Go, .NET, PyInstaller, atau ELF, dan apakah dipacking. Salah identifikasi menghabiskan waktu. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Checklist tetap: (1) buka di DIE untuk melihat compiler, bahasa, dan packer, (2) jalankan strings dan cari 'CSG_FLAG', 'Go build ID', 'runtime.', 'PyInstaller', 'UPX!', 'mscoree.dll', (3) kalau UPX, jalankan upx -d lalu cek lagi di DIE, (4) arahkan ke jalur tool: PE native/Go ke Ghidra + x64dbg, .NET ke dnSpyEx, PyInstaller ke pyinstxtractor. Entropi section yang sangat tinggi di DIE berarti ada data terenkripsi atau packer custom.

Detect It Easy (die / diec)strings atau FLOSSUPX (upx -d)Ghidra (impor dan cek format)PE-bear / CFF Explorer (lihat section dan import)

Analisis statis PE Windows di Ghidra (Defined Strings, Symbol Tree, decompiler, biner Go)

Wajib Dasar

Kenapa: PE Windows x86/x64 (termasuk yang ditulis dengan Go) diprediksi menjadi tipe soal RE paling dominan. Ghidra statis dipakai untuk menemukan fungsi pengecekan, konstanta kunci, dan alur dekripsi sebelum masuk ke debugger. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Urutannya: Defined Strings, cari 'correct', 'wrong', 'key', 'flag', 'http', lalu klik kanan > References untuk lompat ke fungsi pemakainya. Di decompiler, cukup cari if yang membandingkan input (strcmp, memcmp, atau loop byte). Untuk biner Go, buka Symbol Tree dan cari main.main serta fungsi main.* lain; abaikan runtime.*. Kalau nama fungsi hilang, jalankan GoReSym dulu. String di Go tidak diakhiri null, jadi perhatikan pasangan pointer + panjang. Byte array yang mencurigakan: pilih di Listing, Copy Special > Byte String, tempel ke CyberChef.

Ghidra (Window > Defined Strings, Symbol Tree, Decompiler, Show References to, Rename/Retype)GoReSym (memulihkan nama fungsi dan tipe pada biner Go yang di-strip)Detect It Easy (konfirmasi Go/MSVC/MinGW)CyberChef (salin array byte dari Ghidra lalu decode)

Memperbaiki header MZ/PE yang rusak dengan hex editor

Wajib Dasar

Kenapa: Soal 'file tidak bisa dijalankan atau dibuka' sering hanya butuh perbaikan beberapa byte: signature MZ, offset e_lfanew di 0x3C, atau signature PE. Setelah diperbaiki, biner bisa dianalisis seperti biasa. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Bandingkan dengan exe sehat mana pun (misalnya notepad.exe) di hex editor. Cek: (1) byte 0-1 harus 4D 5A ('MZ'), (2) DWORD di offset 0x3C menunjuk ke posisi 'PE\0\0' (50 45 00 00), (3) Machine setelah signature: 4C 01 untuk x86, 64 86 untuk x64, (4) Magic optional header 0B 01 (PE32) atau 0B 02 (PE32+). Perbaiki byte yang salah, simpan sebagai file baru, buka di PE-bear: kalau section dan import tampil normal, berarti sudah benar.

HxD / ImHex (template PE di ImHex)PE-bear / CFF Explorer (validasi header setelah diperbaiki)Detect It Easyfile (CLI)

XOR + Base64 dengan alfabet custom (waspadai tabel decoy)

Wajib Dasar

Kenapa: Encoder flag sering memakai Base64 dengan tabel alfabet yang diacak, digabung dengan XOR. Biner bisa menyimpan lebih dari satu tabel, dan hanya satu yang benar-benar dipakai. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Di Ghidra, cari string sepanjang 64-65 karakter yang mirip alfabet Base64. Kalau ada beberapa, ikuti References: tabel yang dipakai adalah yang dirujuk oleh fungsi encode yang dipanggil dari main, bukan yang hanya disimpan. Lebih aman lagi: breakpoint di x64dbg pada fungsi encode dan lihat alamat tabel yang dibaca. Di CyberChef, tempel tabel itu ke kolom Alphabet di From Base64. Kalau hasilnya masih acak, tambahkan XOR; urutan operasi dibalik dari urutan di kode (encode XOR lalu Base64 berarti decode Base64 lalu XOR).

CyberChef From Base64 (kolom Alphabet bisa diisi string 64 karakter custom)CyberChef XOR / XOR Brute Force (crib 'CSG_FLAG')Ghidra (Defined Strings: cari string 64 karakter berisi A-Z a-z 0-9 dalam urutan acak)x64dbg (pastikan tabel mana yang benar-benar dibaca saat runtime)

Deobfuscation script berlapis (PHP eval/gz/base64, batch %var:~x,y%, PowerShell)

Wajib Dasar

Kenapa: Script yang dibungkus berlapis-lapis adalah pola lama dan baru: CSG 2019 ShellScript (Base64, kode desimal, PowerShell), serta webshell PHP dan batch yang diobfuskasi. Polanya mirip pekerjaan triage: membaca payload tanpa menjalankannya. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Jangan jalankan script aslinya. PHP: eval(gzinflate(base64_decode('...'))) dikupas di CyberChef dengan From Base64 lalu Raw Inflate (gzuncompress = Zlib Inflate, gzdecode = Gunzip, str_rot13 = ROT13); ulangi sampai tidak ada eval lagi. Batch: %var:~x,y% artinya ambil y karakter mulai indeks x (dari 0) dari isi var; salin isi SET-nya, lalu hitung manual atau ganti perintah dengan echo di VM. PowerShell: ganti IEX / Invoke-Expression dengan Write-Output, dan ubah [char]NN dengan Regular expression + From Charcode. Simpan recipe tiap lapis.

CyberChef (From Base64, Raw Inflate / Gunzip / Zlib Inflate, ROT13, From Charcode, Regular expression, Find / Replace, Generic Code Beautify)CyberChef Flow Control (Label/Jump untuk lapisan berulang)Notepad++ / VS Code (hanya untuk membaca)VM terisolasi (ganti eval/IEX dengan echo/Write-Output sebelum dijalankan)

Mengenali dan membongkar rantai encoding/obfuscation (Base64 berlapis, Hex, Unicode escape, reverse, fullwidth)

Wajib Dasar

Kenapa: Poin termurah di kategori Crypto dan peluangnya sangat tinggi. CSG 2019 punya soal fullwidth Unicode ke Base64 (Fraud(1) Whistle blowing). Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Tempel input ke CyberChef lalu tambahkan Magic dengan Intensive mode. Kalau Magic gagal, tebak dari bentuk: '=' di akhir berarti Base64, A-Z2-7 berarti Base32, pasangan 0-9a-f berarti Hex, deretan angka 32-126 berarti From Charcode, \uXXXX berarti Unescape Unicode. Kalau hasil terlihat seperti Base64 terbalik (tanda '=' di depan), tambahkan Reverse. Cari 'CSG_FLAG' di output dan simpan rantai yang berhasil sebagai recipe.

CyberChef (offline, versi unduhan)CyberChef Magic (mode Intensive)CyberChef From Hex / From Base64 / From Base32 / From Charcode / Unescape Unicode / Reversebase64, xxd (CLI)

Cipher klasik dan sejarah (Vigenère dengan kunci dari teka-teki, Baudot/ITA2, spelling alphabet, emoji/substitusi custom)

Wajib Dasar

Kenapa: Peluang tinggi untuk 2026: cipher klasik dan historis sering dibungkus cerita, dengan kunci yang tersembunyi di teka-teki atau deskripsi soal. Siapkan referensi offline karena internet saat lomba tidak bisa diandalkan. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Vigenère: kunci hampir selalu ada di soal (judul, jawaban teka-teki, nama tokoh); coba beberapa kandidat di Vigenère Decode, perhatikan apakah prefix menjadi 'CSG'. Baudot/ITA2: kelompok 5 bit; ingat dua mode (letters dan figures) yang dipindah oleh kode shift. Spelling alphabet (Alfa, Bravo, ...): ambil huruf pertama tiap kata. Emoji/simbol: ganti tiap simbol unik dengan huruf sementara (Find / Replace), lalu pecahkan sebagai substitusi biasa memakai frekuensi dan crib 'CSG_FLAG'.

CyberChef ROT13 Brute Force / Vigenère Decode / Affine / Atbash / SubstitutedCode (Vigenère, Baudot ITA2, NATO phonetic, substitution) dan cryptii (pipeline encoding)Tabel cetak: ITA2 (letters/figures), NATO/ICAO, kode MorseKertas + Frequency distribution di CyberChef (untuk substitusi simbol/emoji)

XOR dengan known plaintext (prefix CSG_FLAG) dan kunci hasil hash passphrase

Wajib Dasar

Kenapa: Format flag CSG_FLAG{ memberi 9 byte known plaintext gratis, cukup untuk memulihkan kunci XOR pendek. Variasi yang diprediksi: kunci XOR adalah hash (misalnya SHA-256) dari sebuah passphrase yang ditemukan di bagian lain soal. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Known plaintext: XOR 9 byte pertama ciphertext dengan 'CSG_FLAG{' di CyberChef (input ciphertext Hex, XOR key UTF8 'CSG_FLAG{'), hasilnya adalah awal kunci. Kalau pola berulang terlihat, itu panjang kunci; pakai sebagai kunci XOR penuh. Kunci dari hash: tulis passphrase, SHA2 256-bit menghasilkan 64 hex = 32 byte, lalu gunakan sebagai kunci XOR format Hex. Coba juga MD5/SHA1 dan variasi passphrase (huruf kecil, tanpa spasi, dengan newline).

CyberChef XOR (kunci Hex/UTF8), XOR Brute Force (Crib 'CSG_FLAG')CyberChef SHA2 / MD5 / SHA1 (output hex) lalu XOR dengan kunci Hexxortool (-l panjang kunci, -c karakter terbanyak, -b brute)Header file sebagai crib: PK, %PDF, MZ, 89 50 4E 47

Cracking hash dan zip/arsip ber-password dengan John (wordlist + mask attack)

Wajib Dasar

Kenapa: Peluang tinggi untuk 2026. Soal sering memberi petunjuk format password (misalnya 4 huruf + 4 angka), sehingga mask attack jauh lebih cepat daripada wordlist. CSG 2017 juga punya soal md5 lookup. John sudah diajukan di form tool request. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Alur: zip2john file.zip > h.txt, lalu john --wordlist=rockyou.txt h.txt. Kalau gagal dan soal memberi petunjuk format, pakai mask: john --mask='?u?l?l?l?d?d?d?d' h.txt (u=huruf besar, l=kecil, d=angka, s=simbol). Kalau prefix diketahui, tulis langsung di mask: --mask='CSG?d?d?d?d'. Hybrid: --wordlist=kata.txt --mask='?w?d?d'. Hasil dilihat dengan john --show h.txt. Untuk hash polos, identifikasi dari panjang (32 hex MD5, 40 SHA1, 64 SHA256) lalu tambahkan --format=raw-md5 dan sejenisnya.

john + zip2john / rar2john / 7z2john / office2john / pdf2johnjohn --mask (?l ?u ?d ?s, ?w untuk hybrid wordlist + mask)hashcat (-a 3 mask) sebagai cadanganrockyou.txt (offline)hashid / name-that-hash

Analisis dinamis x64dbg: breakpoint di compare, baca key dari stack/register, patch jz/jnz anti-debug

Wajib Menengah

Kenapa: Banyak soal PE paling cepat diselesaikan dengan membiarkan program mendekripsi sendiri kuncinya, lalu membacanya di register atau stack saat perbandingan. x64dbg sudah diajukan di form tool request. Polanya juga terlihat di CSG 2019 (sleepy: patch delay menjadi 0). Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Cari alamat compare di Ghidra (strcmp/memcmp/lstrcmpA atau instruksi cmp di loop). Di x64dbg, ketik 'bp strcmp' atau Ctrl+G ke alamat itu (ingat ASLR: pakai offset relatif terhadap base modul), lalu F9 dan masukkan input sembarang. Saat berhenti, klik kanan argumen di RCX/RDX (x64) atau di stack (x86) > Follow in Dump: string yang dibandingkan biasanya kunci atau flag asli. Kalau ada IsDebuggerPresent atau sleep panjang, aktifkan ScyllaHide atau ubah jz menjadi jnz/jmp lewat Assemble, lalu simpan dengan Patch file sebagai file baru.

x64dbg (bp, Run to user code, Follow in Dump, Follow in Stack, Assemble/Patch, File > Patch file)ScyllaHide (plugin, menyembunyikan debugger)Ghidra (cari alamat compare dulu, lalu samakan offset di x64dbg)Hex editor (HxD / ImHex)

Biner bertema malware/C2: kunci RC4/AES/3DES yang di-XOR, lalu dekripsi di CyberChef

Wajib Menengah

Kenapa: Gaya Trend Micro sering memakai cerita insiden atau malware: konfigurasi atau komunikasi C2 dienkripsi RC4/AES/3DES, sementara key dan IV disimpan dalam bentuk ter-XOR. Begitu key ditemukan, dekripsinya cukup di CyberChef. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Tanda RC4 di decompiler: loop 0..255 mengisi array lalu swap. Tanda AES: tabel konstanta 63 7c 77 7b (S-box) atau pemanggilan API kripto Windows. Kalau key/IV terlihat sebagai byte acak yang di-XOR dengan byte lain, hitung XOR-nya di CyberChef (From Hex, XOR dengan kunci Hex) atau ambil hasil akhirnya langsung dari memori di x64dbg. Lalu masukkan ke operasi RC4/AES Decrypt/Triple DES Decrypt; cocokkan mode (ECB/CBC/CTR), format kunci (Hex/UTF8), dan panjang kunci (AES 16/24/32 byte, 3DES 24 byte). Kalau hasilnya acak, coba Swap endianness pada kunci.

Ghidra (cari konstanta S-box AES, loop 256 iterasi RC4, import CryptDecrypt/BCryptDecrypt)x64dbg (breakpoint di CryptDecrypt/BCryptDecrypt atau setelah loop XOR, baca key di memori)CyberChef RC4, AES Decrypt, Triple DES Decrypt, XOR, From HexOpenSSL enc -d (cadangan)Wireshark (ambil ciphertext C2 dari pcap bila soal digabung dengan Network)

Custom packer: berhenti setelah VirtualAlloc/dekripsi, lalu dump memori (x64dbg savedata / Scylla)

Wajib Menengah

Kenapa: Packer buatan sendiri tidak bisa dibuka dengan upx -d. Cara tool-first: biarkan stub membongkar payload ke memori, hentikan di saat yang tepat, lalu dump. Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md.

Tanpa coding: Pasang 'bp VirtualAlloc', F9, lalu Ctrl+F9 (Execute till return): RAX berisi alamat memori baru. Klik kanan RAX > Follow in Dump, tekan F9 lagi sampai region itu terisi; cari 'MZ' atau 'This program cannot be run in DOS mode'. Lalu buka Memory Map, klik kanan region > Dump Memory to File, atau ketik 'savedata :memdump:, alamat, ukuran'. Kalau payload langsung dieksekusi, pakai Scylla untuk dump dan perbaiki import. Buka hasil dump di DIE dan Ghidra; sering kali flag sudah terlihat di strings.

x64dbg (bp VirtualAlloc/VirtualProtect, Execute till return, Memory Map, Follow in Dump)x64dbg command savedata (simpan region memori ke file)Scylla (plugin x64dbg: Dump + IAT Autosearch + Get Imports + Fix Dump)Detect It Easy dan Ghidra (analisis hasil dump)Hex editor (buang byte sebelum 'MZ')

Biner Python (PyInstaller/py2exe) dan .NET (dnSpyEx/ILSpy)

Penting Dasar

Kenapa: Peluangnya sedang menurut prediksi 2026, tetapi jalurnya cepat dan murni GUI/tool: setelah diekstrak atau dibuka di dnSpyEx, kodenya hampir seperti source. CSG 2019 punya dotnet_branch (ubah variabel lewat debugger agar flag asli keluar). Lihat 01-prediksi-soal.md.

Tanpa coding: PyInstaller: jalankan pyinstxtractor, cari .pyc bernama sama dengan program (bukan pyimod/pyiboot), lalu pycdc; kalau gagal di Python 3.11+, pakai pycdas dan baca konstanta. py2exe: arsip Python ada di resource PYTHONSCRIPT, gunakan extractor yang mendukung py2exe. .NET: buka di dnSpyEx, cari string 'flag' atau Base64, ikuti method-nya. Pasang breakpoint sebelum if, F5, ubah nilai di Locals, lanjutkan. Atau Edit Method, balik kondisi, Compile, Save Module. Waspadai flag dummy.

pyinstxtractor / pyinstxtractor-ngpycdc (decompiler) dan pycdas (disassembler)dnSpyEx (debugger, Locals, Edit Method, Save Module)ILSpy (Metadata > UserString Heap)de4dot (kalau .NET terobfuskasi)

RSA lemah secara otomatis (RsaCtfTool: factordb, shared prime, small e, Wiener, Fermat)

Penting Menengah

Kenapa: RsaCtfTool ada di Approved Tool List 2026 dan RSA pernah muncul di CSG 2017 (rsa-8192), tetapi peluangnya turun ke sedang. Karena tool-nya sudah tersedia, persiapan cukup sebatas hafal perintah. Lihat 01-prediksi-soal.md.

Tanpa coding: Ekstrak n dan e dari PEM dengan OpenSSL, lalu jalankan RsaCtfTool dengan semua serangan default. Kalau ada beberapa public key, berikan semuanya sekaligus agar common factors dicoba. Kalau e kecil (3) atau e sangat besar, sebutkan hastads atau wiener secara eksplisit. Cheat sheet: 'p dekat q' = fermat, 'banyak n' = common_factors, 'e sangat besar' = wiener.

RsaCtfTool (--publickey, -n/-e, --attack common_factors/wiener/fermat/hastads, --private, --decrypt)OpenSSL (openssl rsa -pubin -text -noout untuk membaca n dan e dari PEM)factordb (hanya bila ada internet)CyberChef (konversi angka/hex ke teks)

ELF Linux + gdb dan disassembly byte mentah/arsitektur lain (llvm-mc, objdump)

Opsional Menengah

Kenapa: llvm-mc ada di Approved Tool List 2026, jadi soal berisi byte mentah atau arsitektur non-x86 mungkin muncul, tetapi peluangnya sedang dan di bawah PE Windows. Latih setelah skill Wajib dikuasai. Lihat 01-prediksi-soal.md.

Tanpa coding: ELF: coba ltrace dulu (strcmp sering membocorkan password). Di gdb: 'break *alamat_cmp', 'run', lalu 'x/s $rdi' dan 'x/s $rsi' untuk melihat dua string yang dibandingkan. Byte mentah: simpan sebagai teks hex '0x55 0x48 ...' lalu jalankan llvm-mc --disassemble dengan triple yang cocok (x86_64, armv7, aarch64, mips, riscv32). Kalau arsitektur tidak diketahui, coba beberapa triple dan pilih yang hasilnya paling masuk akal, atau impor sebagai Raw Binary di Ghidra.

Ghidra (impor Raw Binary dengan memilih Language/arsitektur)llvm-mc --disassemble --triple=... (byte hex ke assembly)objdump -D -b binary -m <arch>gdb (break, run, x/s, info registers)ltrace / strace

Wawasan lanjutan: membaca threat intel untuk meniru cipher malware, Unity IL2CPP, anti-VM (pafish)

Opsional Menengah

Kenapa: Soal bertema malware kadang meminta dekripsi string atau trafik keluarga malware yang sudah dianalisis publik; laporan threat intel sering sudah menyebutkan kunci dan algoritmanya. IL2CPP dan anti-VM lebih jarang, cukup sebatas tahu jalurnya. Lihat 01-prediksi-soal.md.

Tanpa coding: Threat intel: cocokkan konstanta di Ghidra (kunci, tabel) dengan yang disebut di laporan; contoh publik yang terkenal, string table bot IoT keluarga Mirai di-XOR dengan kunci 0xDEADBEEF yang setara XOR satu byte 0x22. Setelah algoritmanya jelas, tiru di CyberChef. IL2CPP: jalankan Il2CppDumper, buka DummyDll di dnSpyEx untuk nama method, lalu cari alamatnya di GameAssembly.dll. Anti-VM: kalau program keluar diam-diam di VM, cari pengecekan (CPUID, registry VBox/VMware, MAC address) dan patch jump-nya di x64dbg.

Laporan threat intel publik (cari nama keluarga malware + 'string decryption' / 'config')CyberChef (meniru algoritma: XOR, RC4, ADD/SUB, Rotate)Il2CppDumper (GameAssembly.dll + global-metadata.dat) lalu Ghidra/dnSpyExpafish (memahami cek anti-VM yang perlu di-bypass)x64dbg (patch cek anti-VM)

Soorya — Network + OSINT + OT

Owner Network (AD/Kerberos/NTLM, covert channel), OSINT & OT (RFID, CAN) · backup Forensics log & Stego.

Pola pikir SOC ke CTF & navigasi cepat Wireshark

Wajib Dasar

Kenapa: Analis SOC terbiasa berhenti setelah menemukan anomali dan menulis laporan. Di CTF, anomali itu baru petunjuk: artefaknya harus dikeluarkan, di-decode, lalu dirangkai sampai flag terbaca. Soal network CSG yang sudah publik selalu berantai (CSG 2019 'Intact': FTP berisi FLAG.zip + memo password; TMCTF 2019: port-knock yang nomor port-nya kode ASCII). Kecepatan navigasi Wireshark menentukan berapa soal yang sempat dikerjakan.

Tanpa coding: Checklist 5 langkah untuk setiap pcap: (1) Statistics > Protocol Hierarchy, (2) Statistics > Conversations, (3) File > Export Objects (semua protokol), (4) Follow Stream pada percakapan yang aneh, (5) Edit > Find Packet tipe String, cari 'flag', 'CSG', 'pass', 'key'. Simpan filter favorit sebagai Filter Button (http.request, dns && dns.flags.response==0, ntlmssp, kerberos, rtp, tcp.flags.syn==1 && tcp.flags.ack==0, frame contains "flag"). Klik kanan field > Apply as Column supaya nilainya terbaca sekaligus. Sebelum submit, baca lagi instruksi format jawaban: CSG_FLAG{...} atau jawaban polos (hash, IP, path, koordinat).

Wireshark (Statistics: Protocol Hierarchy, Conversations, Endpoints, IO Graph)Display filter + Filter ButtonCustom columnsCyberChef (versi offline)Notepad++

Export Objects, carving file & kredensial cleartext dari pcap

Wajib Dasar

Kenapa: Jenis soal paling sering muncul: file dipindahkan lewat FTP/HTTP/SMB/TFTP/SMTP lalu harus dikeluarkan dari pcap, dan password zip atau akun login sering dikirim cleartext di pcap yang sama (pola CSG 2019 'Intact' dan CSG 2021 'Way').

Tanpa coding: FTP-DATA tidak selalu muncul di Export Objects: Follow TCP Stream pada stream ftp-data, ubah 'Show data as' ke Raw, lalu Save as. Kenali jenis file dari magic byte (PK = zip, ‰PNG = png, MZ = exe). Filter kredensial: ftp.request.command=="PASS"; http.authorization; smtp.req.command=="AUTH"; pop.request || imap.request. String base64 dari HTTP Basic/SMTP AUTH LOGIN ditempel ke CyberChef lalu From Base64. NetworkMiner langsung menyimpan attachment email dan menampilkan kredensial.

Wireshark File > Export Objects (HTTP/SMB/TFTP/IMF/FTP-DATA)Follow TCP Stream > Show data as Raw > Save asWireshark Tools > CredentialsNetworkMiner (tab Files, Credentials, Messages)7-Zip

Ekstraksi field dengan tshark (template copy-paste) + Zeek & jq

Wajib Dasar

Kenapa: GUI lambat untuk ribuan paket. Satu baris tshark menghasilkan daftar query DNS, nilai TTL, IP ID, payload, atau port yang tinggal ditempel ke CyberChef, tanpa menulis program. Zeek ada di Approved Tool List 2026 sehingga berpeluang muncul (prediksi sedang, lihat 01-prediksi-soal.md); log Zeek dibaca dengan zeek-cut atau jq.

Tanpa coding: Template: tshark -r f.pcap -Y "<filter>" -T fields -e <field> > out.txt. Contoh field: dns.qry.name, dns.resp.ttl, ip.id, ip.ttl, data.data, tcp.dstport, http.request.uri, http.file_data. Daftar stream: tshark -r f.pcap -q -z conv,tcp. Isi stream ke-N: tshark -r f.pcap -q -z follow,tcp,ascii,N. Nama field terlihat di status bar Wireshark saat field diklik. Zeek: jalankan zeek -r f.pcap di folder kosong, lalu cat dns.log | zeek-cut query answers. Jika log berformat JSON: jq -r '.query' dns.log, atau jq -c 'select(.id.resp_p==4444)' conn.log.

tsharkZeek (zeek -r file.pcap)zeek-cutjqCyberChefNotepad++

VoIP/RTP: memutar stream audio di Wireshark (data/Morse di dalam panggilan)

Wajib Dasar

Kenapa: Prediksi sedang-tinggi untuk 2026, lihat 01-prediksi-soal.md: flag disembunyikan sebagai suara (ucapan, nada DTMF, atau kode Morse) di dalam stream RTP. Seluruhnya bisa diselesaikan dengan menu Telephony di Wireshark dan Audacity, tanpa coding.

Tanpa coding: Jika RTP terlihat sebagai UDP biasa, aktifkan Analyze > Enabled Protocols > rtp_udp, atau klik kanan paket > Decode As > RTP. Lalu Telephony > VoIP Calls > pilih panggilan > Play Streams. Di RTP Player, export ke .wav, buka di Audacity, ganti tampilan ke Spectrogram untuk melihat pola titik/garis Morse atau teks yang 'tergambar'. Salin titik-garis ke CyberChef From Morse Code. Jika codec tidak bisa diputar, gunakan RTP Stream Analysis > Save payload lalu impor sebagai Raw Data di Audacity (coba beberapa format sampel).

Wireshark Telephony > VoIP Calls / RTP > RTP Streams / RTP PlayerAudacity (waveform + spectrogram)CyberChef (From Morse Code)

OSINT persona: metadata & history git, pivot media sosial, Google dorking (manual, tanpa AI)

Wajib Dasar

Kenapa: OSINT adalah kategori resmi CSG, dan pivot persona berantai diprediksi sangat tinggi untuk 2026, lihat 01-prediksi-soal.md. AI dilarang di 2026, jadi semua pencarian harus manual: email/nama di commit git, secret yang 'dihapus' tapi masih ada di history, akun media sosial dengan username sama, dan dorking situs target.

Tanpa coding: GitHub: buka commit lalu tambahkan .patch di akhir URL untuk melihat nama dan email author. Clone repo, lalu git log --all -p | findstr /i "pass key token secret flag" (Windows) atau grep -i di Kali untuk menemukan secret yang sudah dihapus di commit berikutnya. Cek juga branch lain, tag, dan Issues/PR. Pivot: username sama di X/Instagram/forum, lalu cek foto profil, bio, dan link. Dorking: site:target.tld filetype:pdf, site:target.tld inurl:admin, "nama persona" site:github.com. Catat setiap pivot (sumber > temuan > langkah berikut) supaya tidak berputar-putar, dan salin jawaban persis sesuai format yang diminta.

Browser (GitHub: Commits, Contribution activity, tambahan .patch di URL commit)git (git log -p, git log --all, git show)gitleaks (scan history)Google dorking (site:, inurl:, filetype:, intext:, tanda kutip)Wayback Machine (archive.org)

OSINT geolokasi foto: rambu jalan, Street View & format jawaban presisi

Wajib Dasar

Kenapa: Geolokasi foto diprediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Lokasi ditebak dari rambu, marka, tiang listrik, bahasa, dan arah matahari, lalu dikonfirmasi di Street View. Jawabannya sering harus dalam format sangat spesifik (misalnya koordinat dengan jumlah desimal tertentu), jadi salah pembulatan bisa membuang poin.

Tanpa coding: Urutan kerja: (1) exiftool foto.jpg, karena GPS kadang masih ada di metadata; (2) reverse image search beberapa potongan (crop) foto; (3) baca semua teks: nama toko, nomor rute, rambu arah, nama stasiun, lalu cari di Google Maps; (4) identifikasi negara dari sisi kemudi, warna marka, bentuk rambu, dan bollard (bandingkan di GeoHints); (5) konfirmasi dengan Street View dari sudut yang sama. Koordinat: klik kanan titik di Google Maps untuk menyalin lat,long, lalu bulatkan sesuai instruksi soal (misalnya 3 desimal) dan perhatikan urutan lat/long serta tanda pemisah.

Google Maps + Street ViewGoogle Lens / Yandex / Bing reverse image searchExifTool (cek GPS di metadata dulu)GeoHints (referensi bollard, rambu, plat nomor)Bellingcat OSINT Toolkit

Serangan AD di pcap: LLMNR/NBT-NS poisoning & merakit hash NTLMv2 dari NTLMSSP

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md: pcap berisi korban yang menanyakan nama host via LLMNR/NBT-NS, penyerang (Responder) menjawab, lalu korban mengirim autentikasi NTLMv2. Jawabannya bisa berupa hash NTLMv2 dalam format hashcat (persis) atau password hasil crack. Pengalaman SOC mendeteksi Responder langsung terpakai.

Tanpa coding: Deteksi poisoning: filter llmnr || nbns (UDP 5355 / 137, tujuan 224.0.0.252). Cari query nama yang typo, lalu jawaban dari IP yang bukan DNS server: itulah penyerang. Rakit hash: (1) filter ntlmssp.messagetype==0x00000002, salin ntlmssp.ntlmserverchallenge; (2) filter ntlmssp.messagetype==0x00000003, salin ntlmssp.auth.username, ntlmssp.auth.domain, ntlmssp.ntlmv2_response.ntproofstr, dan seluruh hex ntlmssp.ntlmv2_response; (3) blob = hex ntlmv2_response dikurangi 32 karakter hex pertama (itu NTProofStr). Susun: username::domain:serverchallenge:ntproofstr:blob dalam satu baris, cocokkan polanya dengan contoh mode 5600 di halaman example hashes hashcat. Crack: hashcat -m 5600 hash.txt rockyou.txt. NetworkMiner bisa dipakai untuk cross-check hash yang dirakit manual.

Wireshark (filter llmnr, nbns, ntlmssp)tsharkNetworkMiner (tab Credentials, ekspor hash)hashcat -m 5600 / John the Ripper (netntlmv2)wordlist rockyou.txt (offline)

Kerberos AS-REP roasting dari pcap → crack → derive key → dekripsi SMB3 di Wireshark

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026 dan termasuk tipe soal network tersulit, lihat 01-prediksi-soal.md. Alurnya: ambil AS-REP dari pcap, crack password, turunkan key Kerberos, lalu masukkan ke Wireshark (keytab atau session key + session ID) sampai trafik SMB3 terenkripsi terbuka dan file bisa di-export.

Tanpa coding: (1) Filter kerberos.msg_type==11 (AS-REP). Catat kerberos.CNameString, realm, etype, dan cipher pada enc-part milik client. (2) Untuk etype 23, susun $krb5asrep$23$user@REALM:<32 hex pertama cipher>$<sisa hex> (cocokkan dengan contoh mode 18200 di hashcat), lalu hashcat -m 18200. Untuk etype 17/18 (AES), cek hashcat --help karena mode-nya berbeda (verifikasi di versi yang dipakai). NetworkMiner bisa mengekstrak hash ini otomatis. (3) Setelah password ketemu, buat keytab: ktutil > addent -password -p user@REALM -k 1 -e aes256-cts-hmac-sha1-96 (ulangi untuk rc4-hmac) > wkt user.keytab. (4) Wireshark: KRB5 > centang 'Try to decrypt Kerberos blobs' dan isi keytab. (5) Ambil session key yang muncul dari Kerberos yang terdekripsi, lalu isi Preferences > Protocols > SMB2 > Secret session keys dengan Session ID (8 byte dari header SMB2, dalam urutan byte seperti di paket; coba balik urutannya jika gagal) dan Session Key 16 byte. Jika autentikasinya NTLM, cukup isi NT Password di preferensi NTLMSSP. Saya tidak 100% yakin Wireshark selalu merangkai key Kerberos ke SMB3 otomatis di semua versi: latih dulu dengan pcap contoh, dan siapkan skrip impacket dari tim sebagai cadangan.

Wireshark (Preferences > Protocols > KRB5: keytab; SMB2: Secret session keys; NTLMSSP: NT Password)NetworkMiner (ekstrak hash Kerberos)hashcat -m 18200 / John (krb5asrep)ktutil (Kali) untuk membuat keytab dari passwordimpacket via pip (pip install impacket) sebagai helperExport Objects > SMB

Covert channel di field header protokol (DNS TTL, IP ID, port, ICMP, DNS exfil)

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Ini pola khas Trend Micro: port-knock = ASCII (TMCTF 2019 Quals) dan koordinat di payload ICMP yang di-plot jadi gambar (TMCTF 2018). Data juga bisa disembunyikan di nilai TTL DNS, IP Identification, atau label DNS. Insting SOC terhadap nilai field yang 'aneh tapi teratur' paling relevan di sini.

Tanpa coding: Tambahkan field yang dicurigai sebagai kolom, lalu cari nilai yang berada di rentang ASCII (32-126) atau berubah tidak wajar. DNS TTL: tshark -r f.pcap -Y "dns.flags.response==1" -T fields -e dns.resp.ttl. IP ID: -e ip.id (cek juga byte rendahnya saja, dan coba XOR satu byte di CyberChef bila hasilnya acak). Port-knock: -Y "tcp.flags.syn==1 && tcp.flags.ack==0" -e tcp.dstport. ICMP: -Y "icmp.type==8" -e data.data lalu From Hex. DNS exfil: -e dns.qry.name, buang domain induk, gabungkan label, decode. Tempel daftar angka ke CyberChef dengan From Decimal (delimiter Line feed). Untuk koordinat, paste ke Calc lalu buat Scatter chart.

Wireshark (kolom custom: ip.id, ip.ttl, dns.resp.ttl, tcp.dstport)tsharkCyberChef (From Decimal, From Charcode, From Hex, From Base64/Base32, XOR)Excel/LibreOffice Calc (scatter plot)

Dekripsi TLS (key log / RSA server.key) termasuk HTTP/2

Wajib Menengah

Kenapa: Teknik dekripsi TLS dengan key yang bocor muncul berulang di CSG (2019 dan 2021 'Unlock') dan tetap diprediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Trafik modern sering memakai HTTP/2 setelah didekripsi, jadi perlu tahu cara membacanya.

Tanpa coding: Cari key di file soal (sslkeylog.txt, server.key, *.pem) atau di dalam pcap lewat Export Objects. File keylog (baris CLIENT_RANDOM ...) diisi di '(Pre)-Master-Secret log filename' dan berfungsi untuk TLS 1.3/ECDHE. RSA key hanya berhasil jika cipher bukan (EC)DHE dan bukan TLS 1.3: cek Server Hello > Cipher Suite dulu. Setelah terdekripsi, filter http2 lalu klik kanan > Follow > HTTP/2 Stream; header ada di HEADERS, isi di DATA. Jika objek HTTP/2 tidak muncul di Export Objects, salin isi DATA sebagai Raw. Cek header authorization: Basic dan decode base64.

Wireshark Preferences > Protocols > TLS (RSA keys list, (Pre)-Master-Secret log filename)Follow > HTTP/2 StreamExport Objects HTTPCyberChef (From Base64 untuk Basic auth)

Rekonstruksi data dari trafik SQLi / blind SQLi dengan tshark

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md: pcap berisi serangan SQLi otomatis (sqlmap) dan isi database yang dicuri harus disusun ulang dari pasangan request-response. Analis SOC sudah terbiasa membaca log serangan web, tinggal disusun secara sistematis.

Tanpa coding: (1) tshark -r f.pcap -Y "http.request" -T fields -e frame.number -e http.request.uri > req.txt, lalu URL Decode di CyberChef supaya payload terbaca. (2) Ambil ukuran/status respons: tshark -r f.pcap -Y "http.response" -T fields -e http.response_in -e http.request_in -e http.response.code -e http.content_length > resp.txt. (3) Tempel keduanya ke Calc. Boolean-blind: respons TRUE biasanya lebih panjang atau berisi teks tertentu; untuk setiap posisi karakter (SUBSTRING(...,N,1)), karakter yang benar adalah perbandingan terakhir yang TRUE (pola '>' biner) atau satu-satunya '=' yang TRUE. Time-based: tambahkan kolom selisih waktu (frame.time_delta_displayed) dan cari jeda panjang (SLEEP). (4) Urutkan per posisi lalu gabungkan, dan konversi angka ke huruf dengan From Charcode.

tsharkWireshark (http.request.uri, http.response, http.file_data)CyberChef (URL Decode, From Charcode)Excel/LibreOffice Calc (sort + filter)

Gabungan pcap + reversing: trafik backdoor/C2 + dekripsi dengan key dari binary/script

Wajib Menengah

Kenapa: Prediksi tinggi untuk 2026, lihat 01-prediksi-soal.md: pcap berisi trafik backdoor (misalnya shell telnet/TCP) yang terenkripsi, sementara key/IV ada di binary atau dropper script yang juga dilampirkan atau bisa di-export dari pcap. Soorya mengambil payload dari pcap; Salah (RE) membantu menemukan key dan algoritmanya. Dropper PowerShell/VBS berlapis bisa dibuka di CyberChef.

Tanpa coding: Cari beacon dengan Statistics > Conversations, urutkan berdasarkan Packets: interval teratur dan port tidak lazim biasanya C2. Simpan payload per arah sebagai Raw hex. Minta Salah mencari string/konstanta 16 atau 32 byte (key AES), IV, atau loop XOR di binary. Masukkan ke CyberChef (AES Decrypt mode CBC/ECB/CTR, input Hex; RC4; XOR). Dropper -EncodedCommand: From Base64 lalu Decode text UTF-16LE; jika diawali 'H4sI' tambahkan Gunzip. Jangan pernah mengeksekusi sampel; ganti IEX dengan Write-Output bila perlu safe-echo di VM tanpa jaringan.

Wireshark (Conversations, Follow Stream > Raw, Export Objects)CyberChef (AES Decrypt, RC4, XOR, From Hex/Base64, Decode text UTF-16LE, Gunzip, Magic)strings / Ghidra (bersama Salah)NetworkMiner

OT: CAN bus (candump, can-utils, cannelloni) & protokol ICS (Modbus) di Wireshark

Penting Dasar

Kenapa: can-utils dan cannelloni ada di Approved Tool List 2026, sehingga soal CAN bus diprediksi tinggi untuk kategori OT; Modbus/S7 di pcap diprediksi sedang (lihat 01-prediksi-soal.md). Data biasanya tersembunyi di payload satu CAN ID tertentu atau di register/function code Modbus.

Tanpa coding: Format log candump -l: (timestamp) interface ID#DATA, contoh (1600000000.123456) can0 123#48656C6C6F. Buka di Notepad++/Calc, pisahkan kolom dengan '#', urutkan per ID, lalu hapus duplikat: ID yang jarang muncul atau payload-nya berubah biasanya berisi data. Gabungkan DATA dari satu ID sesuai urutan waktu, lalu From Hex di CyberChef (perhatikan jika muncul header file seperti 89504E47 = PNG). Replay di Kali: sudo modprobe vcan; sudo ip link add dev vcan0 type vcan; sudo ip link set up vcan0; canplayer -I log.txt vcan0=can0 sambil candump vcan0 -a di terminal lain. Modbus: filter modbus || mbtcp, tambahkan kolom mbtcp.unit_id, modbus.func_code, modbus.regval_uint16, lalu baca nilai register/func code sebagai ASCII. Cek juga packet comment (pkt_comment).

can-utils (candump, canplayer, cansniffer, log2asc)cannelloni (CAN over UDP/TCP)Wireshark (dissector CAN/SocketCAN, filter modbus / mbtcp)Notepad++ / Excel (sort per ID)CyberChef (From Hex)

OT: decode protokol perangkat keras dari bitstream (RFID EM4100, Manchester, parity)

Penting Menengah

Kenapa: OT adalah kategori resmi CSG, dan decode bitstream perangkat keras diprediksi tinggi untuk 2026, lihat 01-prediksi-soal.md. Soal tipe ini memberi deretan bit/sinyal yang harus di-decode (Manchester), dipotong sesuai struktur frame (header, data, parity), lalu ID tag-nya dibaca. Bisa dikerjakan dengan Notepad++ dan Calc, tanpa coding.

Tanpa coding: Manchester: pecah bitstream jadi pasangan 2 bit. Di satu konvensi 01 = 1 dan 10 = 0, di konvensi lain kebalikannya; coba keduanya, dan jika muncul pasangan 00/11 geser start 1 bit. EM4100 (64 bit): cari 9 bit '1' berturut-turut sebagai header, lalu 10 baris berisi 4 bit data + 1 bit parity genap, 4 bit parity kolom, dan 1 stop bit '0'. Tulis 10 baris itu di Calc, cek parity setiap baris dan kolom untuk memastikan alignment benar, lalu gabungkan 40 bit data jadi 10 digit hex (2 hex pertama = version/customer ID, 8 hex berikutnya = ID tag; desimalnya kadang yang diminta sebagai jawaban).

Notepad++ (Find/Replace untuk Manchester)CyberChef (From Binary, From Hex)Excel/LibreOffice Calc (cek parity per baris/kolom)PulseView/sigrok (jika diberi capture sinyal)

Pcap non-Ethernet: USB HID keyboard & WLAN WPA/WPA2

Penting Menengah

Kenapa: USB HID keyboard adalah soal pcap klasik yang masih layak disiapkan. WPA crack pernah muncul di CSG 2019 ('WLAN'), tetapi peluangnya di 2026 rendah-sedang (lihat 01-prediksi-soal.md), jadi cukup kuasai alur dasarnya.

Tanpa coding: USB: tshark -r usb.pcap -Y "usb.transfer_type==0x01 && usb.data_len==8" -T fields -e usbhid.data (jika kosong, ganti -e usb.capdata). Abaikan baris nol semua. Byte ke-1 = modifier (02/20 = Shift), byte ke-3 = keycode (0x04 = a ... 0x1d = z, 0x1e-0x27 = 1-0, 0x28 = Enter, 0x2a = Backspace). Siapkan script decoder dari tim sebelum lomba. WPA: filter eapol (harus ada 4 paket handshake), aircrack-ng -w rockyou.txt capture.cap, lalu dekripsi dengan airdecap-ng -e <SSID> -p <password> capture.cap atau di Wireshark (wpa-pwd password:SSID). Jika pcapng ditolak, simpan ulang sebagai pcap.

Wireshark (usbhid.data / usb.capdata; IEEE 802.11 decryption keys)tsharkTabel HID Usage Keyboard (cetak/offline)aircrack-ng, airdecap-ngrockyou.txt (offline)

Cadangan Forensics: EVTX & recovery SSH session key dari memory Linux (bantu Dante)

Opsional Menengah

Kenapa: EVTX PowerShell/log diprediksi tinggi dan pengalaman SIEM Soorya langsung terpakai. Plugin OpenSSH-Session-Key-Recovery ada di Approved Tool List 2026, sehingga soal 'memory Linux → SSH key → dekripsi SSH di pcap' berpeluang muncul (lihat 01-prediksi-soal.md). Dante memegang memory dump; Soorya membantu sisi pcap SSH-nya.

Tanpa coding: EVTX: chainsaw search "flag" <folder> atau chainsaw hunt <folder> -s sigma/ --mapping mappings/sigma-event-logs-all.yml --csv --output hasil, buka CSV di Excel. Fokus Event ID 4104 (PowerShell script block), 4688, 7045, 4624/4625. SSH: Dante menjalankan plugin pada memory dump Linux untuk mendapatkan key sesi SSH; Soorya menyiapkan pcap SSH dan stream yang cocok (filter ssh, Statistics > Conversations), lalu mengikuti README repo untuk mendekripsi. Latih sekali saja setelah skill Wajib dikuasai.

Chainsaw (hunt + Sigma rules, search)EvtxECmd + Timeline ExplorerEvent Viewer (filter Event ID)OpenSSH-Session-Key-Recovery (plugin Volatility, fox-it)Wireshark (trafik SSH)