Tentunya banyak dari kamu yang menggunakan aplikasi dengan opsi untuk login menggunakan beberapa akun sosial media yang kamu miliki seperti facebook, twitter, google, linkedin dll. Misal ketika kamu login menggunakan facebook, dalam prosesnya, biasanya pengguna akan dialihkan ke halaman login facebook agar kamu bisa memberikan izin otorisasi, akhirnya facebook akan memberikan access token yang kemudian mengalihkan kamu kembali kepada aplikasi tersebut.
https://www.facebook.com/dialog/oauth?client_id=app-id&redirect_uri=http://app-site.com
Proses pengalihan/redirecting inilah yang menjadi celah yang memungkinkan para attacker mendapatkan data login pengguna, jika kamu lihat url diatas, attacker mungkin saja merekonstruksi link menjadi,
https://www.facebook.com/dialog/oauth?client_id=app-id&redirect_uri=http://attacker-site.com
Sehingga proses redirection mengarah ke website si attacker, setelah itu proses ini lalu dipakai untuk memfasilitasi apa yang dinamakan phising attack.
Ini bisa terjadi karena aplikasi tersebut tidak memverifikasi domain pada proses pengalihan menggunakan redirect_uri
ini biasa terjadi karena aplikasi menggunakan metoda Open Redirect pada proses redirection.
Cara terbaik untuk menghindari kerentanan Open Redirect adalah dengan menghindari penggunaan redirect_uri
secara langsung pada url akan lebih baik jika di set pada sisi server. Jika tidak dapat dihindari, hal itu dapat ditangani dengan memvalidasi redirect url
dan melakukan whitelist URL yang disetujui.
What is every hacker’s weekend gateaway?
They go phising.
~ Punny Leone