Dalam dunia keamanan siber yang terus berkembang, salah satu kerentanan yang mendapatkan perhatian signifikan dalam beberapa tahun terakhir adalah pengalihan dan penerusan yang tidak tervalidasi. Kerentanan ini terjadi ketika aplikasi atau situs web salah menangani pengalihan pengguna ke halaman yang berbeda, sering kali di luar konteks yang dimaksudkan. Masalah ini dapat mengekspos pengguna dan organisasi pada berbagai risiko keamanan, sehingga penting bagi pengembang dan profesional keamanan siber untuk memahami penyebab yang mendasari, potensi dampak, dan strategi mitigasi.
Apa yang dimaksud dengan Pengalihan dan Penerusan yang Tidak Tervalidasi?
Pengalihan yang baik adalah pengalihan yang dilakukan dengan menggunakan sejumlah input yang ditargetkan (pengalihan ke aplikasi yang sama, dll.) dan mempertimbangkan tujuannya (situs web) tanpa partisipasi pengguna (tidak menggunakan string kueri - validasi). Redirect dan forward adalah dua fungsi yang sangat umum digunakan aplikasi web untuk mengarahkan pengguna ke halaman login, halaman konfirmasi, kembali ke halaman beranda, ketika pengguna dapat memanipulasi URL yang mengontrol tindakan ini, mereka dapat diarahkan ke situs berbahaya atau melakukan tindakan yang tidak sah.
![]() |
sumber: ifourtechnolab.com |
Pengalihan adalah ketika pengguna dikirim dari satu halaman ke halaman lain. Sebagai contoh, Anda akhirnya memasukkan id pengguna dan kata sandi Anda dan ketika Anda menekan enter, Anda akan dibawa ke halaman profil. Penerusan adalah pengalihan internal dalam sebuah aplikasi - server mengirimkan permintaan ke halaman lain, tanpa keterlibatan pengguna secara langsung.
Namun, jika penyerang memiliki akses ke mekanisme ini, mereka dapat mengarahkan pengguna ke halaman web yang berbahaya, atau mencuri informasi sensitif melalui intersepsi input pengguna. Hal ini membuat pengalihan dan penerusan yang tidak tervalidasi menjadi ancaman yang signifikan terhadap keamanan online.
Bagaimana Cara Kerja Pengalihan dan Penerusan yang Tidak Tervalidasi?
Untuk menjelaskan apa itu pengalihan dan penerusan yang tidak tervalidasi dalam praktiknya, mari kita ambil contoh sebuah toko online. Jika sistem tidak memvalidasi URL yang diteruskan untuk pengalihan dengan benar, penyerang dapat merusak URL untuk mengarahkan korban ke halaman phishing dan mencuri kredensial.
Untuk penerusan yang tidak tervalidasi, penyerang menyalahgunakan pengalihan internal untuk mendapatkan akses ke sumber daya yang dilindungi. Contohnya adalah aplikasi web yang mengarahkan pengguna ke halaman yang menampilkan data sensitif, di mana penyerang dapat mengubah elemen input untuk mendapatkan akses tidak sah ke sumber daya dan mem-bypass autentikasi dan otorisasi.
Kedua bentuk serangan ini biasanya bergantung pada kurangnya pemeriksaan validasi yang tepat, yang memungkinkan pelaku jahat untuk mengarahkan lalu lintas ke situs yang tidak tepercaya atau rute aplikasi internal, yang dapat menyebabkan kebocoran data, pengunduhan malware, atau bahkan pembobolan aplikasi secara penuh.
Batasan Pengalihan dan Penerusan yang Tidak Divalidasi
Hal ini menyebabkan pengguna dan organisasi mengalami kerugian besar. Dan bahkan risiko utamanya adalah ancaman phishing. Hal ini dilakukan dengan meninjau individu ke dalam situs palsu yang terlihat seperti situs asli, meminta orang untuk mengirimkan elemen/identitas halus seperti kata sandi, kartu kredit, atau informasi lain yang terpisah.
Risiko utama kedua adalah potensi penyebaran malware. Jika pengalihan mengarahkan pengguna ke situs yang disusupi atau berbahaya, penyerang mungkin mencoba mengirimkan perangkat lunak berbahaya yang mengeksploitasi kerentanan pada sistem pengguna.
Kerentanan ini juga memungkinkan untuk melewati mekanisme autentikasi. Ini bukanlah daftar lengkap karena penyerang dapat memanipulasi penerusan untuk mendapatkan area sensitif dari sebuah aplikasi atau untuk mendapatkan hak istimewa yang tidak sah.
Bagi organisasi, kerugian finansial dan reputasi akibat serangan ini bisa sangat parah. Pelanggaran data, penipuan, dan erosi kepercayaan pengguna adalah hasil potensial dari pengalihan dan penerusan yang tidak tervalidasi. Selain itu, jika organisasi tunduk pada peraturan perlindungan data, kegagalan untuk mencegah serangan semacam itu dapat mengakibatkan denda dan hukuman yang berat.
Strategi Mitigasi
Namun, pencegahan pengalihan dan penerusan yang tidak tervalidasi harus diikuti selama pengembangan, yang merupakan pendekatan proaktif untuk pencegahan serangan. Berikut adalah beberapa ide untuk meminimalkan risiko ini:
1. Validasi Masukan: Cara terbaik untuk memitigasi pengalihan dan penerusan yang tidak tervalidasi, adalah dengan memvalidasi masukan pengguna. Gunakan hanya URL tepercaya di mana pengalihan diperlukan. Atau jangan biarkan input yang dikendalikan pengguna memutuskan ke mana tujuan akhirnya, kecuali jika itu adalah titik akhir yang telah diotorisasi dan tepercaya.
2. Gunakan Daftar Putih: Ini berarti mengizinkan pengguna untuk mengarahkan hanya ke serangkaian URL yang disetujui dan aman. Dengan memvalidasi masukan pengguna terhadap daftar ini, Anda dapat memastikan bahwa pengalihan selalu ke tujuan yang valid.
3. Penerusan Internal: Jangan Gunakan URL yang Dikendalikan Pengguna: Jangan gunakan masukan yang tidak tervalidasi sebagai target pengalihan atau penerusan internal. Pengalihan internal harus selalu ditujukan ke jalur yang telah ditetapkan sehingga tidak ada yang dapat membuat jalur untuk pengalihan yang tidak diinginkan.
4. Gunakan URL Relatif: Kapan pun memungkinkan, gunakan URL relatif alih-alih URL absolut. Dengan cara ini, penyerang tidak dapat dengan mudah memanipulasi pengalihan ke situs eksternal.
5. Menerapkan Konfirmasi Pengguna: Terkadang, sangat tepat untuk mengonfirmasi pengalihan atau penerusan sebelum terjadi. Halaman bukti atau peringatan pada penerusan dapat memberikan kesempatan bagi pengguna untuk memeriksa apakah tujuan tersebut nyata
6. Gunakan Header Keamanan: Header keamanan HTTP seperti X-Content-Type-Options, Content-Security-Policy, dan Strict-Transport-Security dapat menambahkan lapisan perlindungan tambahan terhadap tindakan yang tidak sah dan injeksi konten.
Kesimpulan
Pengalihan dan penerusan yang tidak tervalidasi menimbulkan risiko serius bagi keamanan online, yang berpotensi menyebabkan pencurian data, serangan phishing, dan akses tidak sah ke area sensitif aplikasi. Pengembang dan organisasi harus tetap waspada dan menerapkan praktik terbaik seperti validasi input, daftar putih, dan konfirmasi pengguna untuk mengurangi risiko ini. Dengan demikian, mereka dapat melindungi pengguna mereka dan menjaga kepercayaan sambil mencegah kerentanan ini dieksploitasi.
Kembali ke>>>> Kerentanan Web Umum: Gambaran Umum