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 
 

4 comments:

  1. It's very useful blog post with informative and insightful content and i had good experience with this information.I have gone through CRS Info Solutions Home which really nice. Learn more details About Us of CRS info solutions. Here you can see the Courses CRS Info Solutions full list. Find Student Registration page and register now. Go through Blog post of crs info solutions. I just read these Reviews of crs really great. You can now Contact Us of crs info solutions. You enroll for Pega Training at crs info solutions.

    ReplyDelete