Penyelesaian Untuk Web 'Simple' Challenges

Penyelesaian Untuk Web 'Simple' Challenges

Pra Kata

Sebelumnya terima kasih buat slashroot ctf karena tanpa slashroot ctf mungkin saya tidak bisa memprovide challenges ini melalui dewaweb.com, Terima kasih buat teman-teman yang sudah meluangkan waktunya untuk challenges ‘simple’ ini,

Kata

clue “recon, tools, sign-in, submit”

recon ini sangat mudah, sebenarnya tidak perlu menggunakan tools atau scanner, banyak kok website yang masih menyimpan sesuatu yang penting itu pada comment html

html comment sensitive information
terlihat jelas ada info bahwa git repositori (/.git/) dipindahkan pada direktori /git/ kita coba akses dulu

litespeed 403 forbidden
namun ketika diakses server menampilkan halaman forbidden, namun belum berarti file atau direktori yang diakses tidak ada, jika tidak ada maka respon yang diberikan seharusnya adalah 404 Not Found

karena web server yang digunakan oleh ini adalah litespeed maka defaultnya directory listing pada web server dimatikan sama seperti web server sebelah (baca: ya itulah nging nginx), kita cek apakah benar git repo ada pada direktori tersebut?, temen-temen pasti hafal bagaimana struktur file yang pasti ada pada folder git repo, yup bener, pasti ada

  • /git/config
  • /git/description
  • /git/HEAD
  • dsb

lalu kita coba request salah satu file common yang ada pada direktori git

config pop up download
dan ternyata benar, muncul pop up confirm download file config dari isi direktori git

Yeay git repo memang berada pada direktori tersebut.
Karena kita tidak bisa melihat isi direktori dan terlalu menyusahkan untuk merequest satu per satu file yang ada pada git repository (ya meski ada salah satu player yang melakukan request secara auto manual), maka dari itu kita menggunakan tool dvcs-ripper (baca: cara dump exposed git repository)

rip-git command dump
tunggu sampai dump file git-nya selesai

Dan kita berhasil mengambil source code pada web tersebut git log output
ternyata ada commit login function

Ternyata ada file login.php pada folder admin, jadi requestnya seperti ke challshl.com/admin/login.php, Waktunya baca-baca bad kode
ternyata ada dua jenis post data yang diambil yaitu sign-in, dan sign-up. login.php source code
isi file login.php

karena pengecekan hanya post signin atau signup, kita rubah aja input data kita yang semula signin menjadi signup inspect element to manual change post data value
submit dan seharusnya kita dapat pop-up berhasil mendaftar namun tidak muncul (it’s okay), langsung saja kita coba untuk login dengan data username dan password yang sudah kita set sebelumnya

yeay logged in
logged in :3
Kita berhasil masuk, dan klik submit maka nickname username kita telah masuk ke solver list

Pasca-Kata

Side story: challenges berdasarkan SVWA, yang dilakukan perubahan oleh beberapa teman saya, ketika sedang memaintenis kode yang telah dirubah, terlihat sedikit kejanggalan yaitu form sign-up telah dihapus yang hanya meninggalkan form sign-in namun fungsi untuk sign-up masih ada dan karena penasaran saya coba untuk melakukan eksploitasi dan berhasil, maka dari itu jadilah challenges ini, thanks berad untuk @Ytyao yang berhasil first blood dan mengingatkan tentang EAR (Execution After Redirect) yang ada pada /admin/ dan

Korea, [20.12.18 06:50]
ngoding jangan pakai perasaan
ngarai
pekok,
ngae logika
perasaan iki kadang jare sayang yo ra sayang :v

See you on next challenges
- Fin