Sebenarnya challenge ini dibuat dari ide teman saya yang kebetulan juga saya ikut membantu dalam proses development dan deployment dimana challenge ini terkait dengan Web Exploitation dan Cryptography jadi langsung saja

Bisa dibaca pada deskripsi untuk lebih jelas dan intinya pada deskripsi diberikan suatu clue yaitu regex dan analysis.

Jika kita masuk pada halaman login terdapat 2 form input yaitu username dan password

Dimana jika view source pada HTML code terdapat regex dari username dan password jadi kita diminta untuk melakukan bypass dan memecahkan validasi regex tersebut.

username regex:
^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[!@#$%^&*])[A-Za-z0-9!@#$%^&*]{12,20}$  

password regex: 
^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[!@#$%^&*])(?!.*(\d){2,})(?!.*([A-Za-z0-9]){2,})[A-Za-z0-9!@#$%^&*]{20,30}$

Jika kita memahami regex sangat mudah untuk memecahkan pattern dari validasi tersebut, pada regex username terdapat pola dimana kita harus menginputkan character mulai dari huruf besar, kecil, angka dan special character hingga 12 sampai 20 dan pada password meminta hingga 20 sampai 30 character.

Mulai analysis manual menggunakan webtools https://regex101.com/ dan lakukan matching pada pattern regex disini kita inputkan dengan Bhitech!@123 dan terlihat matching ya selanjutnya kita analysis pada bagian password

pada password kita juga memiliki pattern yang cocok menggunakan string Bhitech123!A@testing jadi kita sudah menemukan username dan password

user: Bhitech!@123

pass: Bhitech123!A@testing

Jadi kita bisa lanjut untuk login..

Dan kita berhasil masuk dashboard, dan pada tampilan dashboard terdapat 3 list menu dan kita diminta untuk mendownload file log

Pada access log di file pertama tidak ada yang menarik hanya akses log dan menampilkan request path dari client jadi kita lanjut yang kedua

pada file error log kedua juga tidak ada hint atau clue jadi kita skip dan lanjut pada file user action yang ketiga

Dan disini menarik jadi pada file ketiga ini berisi log action user yang sudah login dan terdapat name cookie dari object User Action dimana berisi key session_id dan value semacam unique number.

Kemungkinan ini merupakan suatu valid session dari user sebelumnya karena dari key objectnya menunjukkan cookie jadi kita masukkan cookie dengan name session_id dan memilih acak salah satu value

Benar saja setelah input cookies, pada header website menampilkan suatu pesan yang dimana disana kita menemukan suatu cipher text

Kode rahasia:

3a273b1f001a3034070509163b24610f3a29183c211c550b3c101d0d3a2d692261342649363e2758175836282f

Petunjuk XOR:

Ingat, jika A ^ B = C, maka C ^ A = B! 
Semoga ini membantu!

Format flag: bhitech{...}

Dan kita juga disuguhkan suatu petunjuk terkait dengan XOR. jadi XOR itu merupakan operasi cryptography ya dimana jika 1 ^ 1 = 0 maka 1 ^ 0 =1 atau gampangnya jika bilangan yang di XOR itu sama contoh 1 ^ 1 = 0 atau 0 ^ 0 = 0 dan sebaliknya jika bilangan berbeda maka hasilnya 1

Bisa asumsikan disini kita mempunyai ciphertext tapi tidak mempunyai key jadi rumusnya:

flag ^ key = ciphertext(kita punya)

jika

cipher ^ key = flag(kita belum punya)

disini kita membutuhkan key dimana kita sudah tau sebagian dari format flag yaitu bhitech{} jadi jika 

cipher ^ flag(sebagian) = key 

jadi kita perlu lakukan XOR dengan sebagian flag untuk mendapatkan key sehingga kita bisa melakukan decrypting pada ciphertext 

ada 2 cara ya kita bisa menggunakan webtools maupun membuat suatu program sendiri menggunakan python. Simplenya kita bisa menggunakan webtools dari cyberchef https://gchq.github.io/CyberChef/

Pertama kita convert dulu dari hex karena ciphertext disana di encode menggunakan hexadecimal lalu kedua kita pilih XOR

Terlihat ya saat kita input bhitech(6 character) sebagian output menampilkan XORkey(6 character) karena kita menginput 6 character jadi hasil yang diambil juga 6 character yang dimana kita berhasil mendapatkan suatu key yaitu XORkey dan jika masukkan key yang valid

Maka outputnya akan menampilkan flag yang benar atau bisa juga kita membuat simple program menggunakan python

dan jika kita run

Flag: bhitech{Unlock3d_P@ssw0rd_Of_T1m3_C0nqu3r!ng}

Cukup sekian semoga bermanfaat, keep learning and exploring

By xpl0dec

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *