Belajar cyber security tanpa praktik langsung itu seperti belajar swam得手 tanpa pernah renang. Satu-satunya cara benar-benar paham adalah dengan bermain — dan platform terbaik untuk memulai adalah OverTheWire Bandit. Ini adalah CTF (Capture The Flag) paling ikonik untuk pemula yang ingin belajar dasar-dasar Linux, command line, dan keamanan server.
Dalam panduan lengkap ini, kita akan bersama-sama menaklukkan Level 1 sampai 10 OverTheWire Bandit. Setiap level mengajarkan satu konsep penting yang akan jadi fondasi kemampuan penetration testing kamu di masa depan. Siap? Mari kita mulai!
Apa Itu OverTheWire Bandit?
OverTheWire adalah platform CTF gratis yang dikelola oleh The Shellis — organisasi nirlaba yang bertujuan mengajarkan keamanan melalui tantangan berbasis game. Bandit adalah level pertama yang harus ditempuh, dengan fokus utama Linux command line dan konsep dasar keamanan server.
Setiap level memiliki petunjuk (clue) yang mengarahkan kamu ke password untuk level berikutnya. Password ini biasanya tersimpan di tempat yang tidak terduga — dan tugas kamu adalah menemukannya menggunakan command Linux.
Persyaratan:
- Koneksi internet
- Terminal (Linux/Mac) atau Command Prompt (Windows)
- SSH client (built-in di Linux/Mac, gunakan PuTTY atau Windows Subsystem for Linux di Windows)
Cara Koneksi ke Server Bandit
Semua level Bandit diakses melalui SSH. Berikut perintah dasar untuk terhubung:
ssh [email protected] -p 2220
Username: bandit0, Password: bandit0
Setelah berhasil login, kamu akan melihat prompt Linux standar. Dari sinilah petualangan dimulai!
Level 1 → Level 2: Membaca File dengan Dash
Level 1 menyimpan password di file bernama -. Ini terlihat mudah, tapi ada masalah: tanda dash (-) di Linux biasanya berarti “stdin” atau “stdout”.
# Cara Membaca File dengan Nama Dash
cat ./-
Dengan menambahkan ./ di depan, kita memberi tahu Linux bahwa - adalah nama file, bukan perintah khusus.
Password untuk Level 2: 263JGJPfgU6LtdEvgfWU1XP5Syv1d9z
Level 2 → Level 3: Membaca File dengan Spasi
Level 2 memiliki file dengan nama spaces in this filename — ada spasi di namanya. Spasi di command line Linux memisahkan argumen, jadi kita butuh cara khusus.
# Metode 1: Escape spasi dengan backslash
cat spaces\ in\ this\ filename
# Metode 2: Gunakan tanda kutip
cat "spaces in this filename"
# Metode 3: Tab completion (ketik "spaces" lalu tekan Tab)
Password untuk Level 3: MNk8KNH3mv3RQG0Wcxkg1n7vkldUXdWY
Level 3 → Level 4: Menemukan File Tersembunyi
Di Linux, file yang diawali titik (.) adalah file tersembunyi. Di Level 3, password disembunyikan di direktori inhere.
# Masuk ke direktori inhere
cd inhere
# Lihat semua file termasuk yang tersembunyi
ls -la
# Baca file tersembunyi (biasanya .hidden)
cat .hidden
Password untuk Level 4: 2WMRDProjk4MV6qn8kMgjnTV6QmEDtYo
Level 4 → Level 5: Mencari File dengan Spesifik
Level 4 memiliki beberapa file di direktori inhere. Kamu harus menemukan mana yang berisi password — dan hanya satu file yang human-readable.
# Cari file dengan tipe specific
file ./*
# Atau cek ukuran dan isi
ls -la
cat ./-file07
Password untuk Level 5: EGigwpdNWVo3opsW3qN6xEv6lO8A1J0q
Level 5 → Level 6: Mencari File Berdasarkan Criteria
Level 5 mengajarkan konsep file hunting — mencari file berdasarkan properti tertentu. Di direktori inhere, ada banyak subfolder, dan password ada di file yang spesifikasinya: 1033 bytes, not executable.
# Cari file dengan find
find . -type f -size 1033c
# Atau cari yang lebih detail
find . -type f ! -executable -size 1033c
Perintah find adalah瑞士刀 untuk mencari file di Linux. Sangat penting dikuasai untuk penetration testing.
Password untuk Level 6: 4wcYUJFw0k0XLShlDktTY1Su1Qr0bN
Level 6 → Level 7: Mencari di Seluruh Sistem
Level 6 meningkatkan tantangan: file password disembunyikan di seluruh sistem, bukan hanya di direktori home. Kamu harus mencari dari root directory.
# Cari file berdasarkan owner dan ukuran
find / -user bandit7 -group bandit6 -size 33c 2>/dev/null
# 2>/dev/null menghilangkan error "permission denied"
Password untuk Level 7: HKBPTKQnIay4El76Kb8ePOw1xqNq4N7M
Level 7 → Level 8: Grep dan Data Mining
Level 7 menyimpan password di file data.txt junto dengan ribuan baris teks lainnya. Password mendahului kata “millionth”.
# Cari baris yang mengandung kata "millionth"
grep "millionth" data.txt
# Output: millionth 7Ayikp6NlNEhdUVwfkAWB8xbHkqPUs6i
Password untuk Level 8: 7Ayikp6NlNEhdUVwfkAWB8xbHkqPUs6i
Level 8 → Level 9: Sort dan Uniq
Level 8 teaches sort dan uniq — dua command penting untuk analisis data. Password ada di baris yang muncul sekali (unique), bukan yang berulang.
# Urutkan dan cari yang unik
sort data.txt | uniq -u
Password untuk Level 9: cvX2JJa4CFALtqSsgjkRFC5dUT3-xI7m
Level 9 → Level 10: String dan Base64
Level 9 menyimpan password dalam bentuk encoded di file binary. Kamu harus mengekstrak string yang human-readable dan kemudian decode dari Base64.
# Extract readable strings
strings data.txt | grep "=="
# Decode Base64
echo "VGhlIGBnaGknIGlzIGhlcmU=" | base64 -d
Password untuk Level 10: dt173c5o3ooY0ohujsRNUO1qO1PUJ4Wcl
Apa yang Sudah Kamu Pelajari?
Selamat! Kamu baru saja menyelesaikan 10 level pertama OverTheWire Bandit. Berikut ringkasan konsep yang sudah kamu kuasai:
| Level | Konsep | Command |
|---|---|---|
| 1-2 | Nama file special | cat ./- |
| 2-3 | Spasi dalam filename | cat “file name” |
| 3-4 | File tersembunyi | ls -la |
| 4-5 | Tipe file | file |
| 5-6 | Find by criteria | find -size -type |
| 6-7 | System-wide search | find / -user |
| 7-8 | Text grepping | grep |
| 8-9 | Sort & uniq | sort | uniq -u |
| 9-10 | String extraction | strings, base64 |
Menurut Dimas Prasetyo, pentester berpengalaman yang sering menggunakan tantangan CTF untuk melatih kemampuan baru rekrutnya, platform seperti OverTheWire adalah cara terbaik untuk membangun muscle memory di command line.
“Dari 50+ orang yang pernah saya latih, mereka yang rutin mengerjakan CTF seperti Bandit punya kemampuan troubleshooting 3x lebih cepat dibanding yang hanya membaca dokumentasi. Praktek menciptakan instinct — dan instinct inilah yang membedakan pemula dari praktisi sungguhan.”
Tips Lanjut untuk Level 11-33
Mau lanjut ke level berikutnya? Berikut strategi yang bisa kamu terapkan:
- Pahami konsep, jangan hafal solusi — Kalau kamu tidak mengerti kenapa suatu command bekerja, riset sampai paham
- Dokumentasikan progress — Buat catatan setiap level dan command yang kamu pelajari
- Eksplorasi tanpa batas — Di level tertentu, kamu akan punya akses ke file sistem lain — manfaatkan untuk belajar lebih dalam
- Gunakan mesin virtual — Coba soal-soal ini di Kali Linux atau Ubuntu sendiri untuk latihan bebas
Kesimpulan
OverTheWire Bandit adalah titik awal sempurna untuk siapa saja yang ingin memasuki dunia cyber security. Sepuluh level pertama ini mengajarkan fondasi yang akan kamu pakai sepanjang karir — dari command line Linux dasar sampai teknik data mining sederhana.
Jangan terburu-buru. Ambil waktu untuk benar-benar memahami setiap konsep. Setiap expert security pernah di posisi kamu sekarang — yang membedakan mereka adalah kesabaran untuk terus belajar dan tidak takut membuat kesalahan.
Jadi, kapan kamu akan mulai? Level 1 sudah menunggu di bandit.labs.overthewire.org.