JCC Challenge 3

File Inclusion / Directory Traversal

Website ini punya fitur navigasi yang rentan terhadap Local File Inclusion (LFI). Coba akses file sensitif yang seharusnya nggak bisa dibaca user.

Clue:
  • Parameter 'page' dipakai buat load konten
  • Coba akses file di luar direktori yang seharusnya
  • Flag ada di file /flag.txt atau ../flag.txt
Welcome to JCC Training
Ini adalah halaman home. Gunakan navigasi di atas untuk melihat halaman lain.

Tantangan: Coba akses file flag.txt yang ada di server!
?page=home

📚 Tutorial & Walkthrough

1Pahami Local File Inclusion
LFI terjadi ketika aplikasi memasukkan file dari input user tanpa validasi yang proper.
include($_GET['page'] . '.php');
Bahaya:
Attacker bisa baca file sensitif seperti /etc/passwd, config files, atau flag.txt
2Directory Traversal
Gunakan ../ untuk naik ke direktori parent.
../../../etc/passwd
Cara Kerja:
Setiap ../ naik satu level. Dengan cukup ../, kita bisa akses file di mana saja.
3Payload LFI
Coba payload berikut di URL:
?page=../flag.txt
?page=../../../flag.txt
Tips:
Kalau satu ../ nggak cukup, tambah lebih banyak sampai berhasil.
4Eksekusi
  1. Klik salah satu link navigasi (Home/About/Contact)
  2. Perhatikan URL berubah jadi ?page=home
  3. Ubah parameter jadi ?page=../flag.txt
  4. Tekan Enter
Alternatif:
Bisa juga klik tombol navigasi sambil tahan Ctrl/Cmd untuk buka di tab baru, lalu edit URL.
5Flag & Completion
Kalau berhasil, halaman akan menampilkan:
🚨 File Access Detected!
Flag: JCC{lfi_directory_traversal_master}
Selamat!
Kamu berhasil membaca file sensitif menggunakan LFI/Directory Traversal!