نحوه تشخیص آسیب پذیری open redirect چگونه است؟
برای تشخیص این آسیب پذیری ابزارهای زیر به شما کمک می‌کنند:
burp suite
fiddler
post man
و ...
به این صورت که پس از پروکسی یا تونل شدن ارتباطات مرورگر و وب‌سایت، توسط این ابزارها، درخواست هایی که موجب عمل ریدایرکت شده اند و پاسخ های آنها، کد وضعیتی مربوط به ریدایرکشن یعنی 301،302،307و... دارند را مورد ارزیابی قرار می‌دهیم.
در صورتی که مقدار پارامتر مربوط به ریدایرکشن، در درخواست گفته شده را با یک وب‌سایت دیگر تغییر بدهیم و پس از ارسال شدن آن، مرورگر ما بواسطه‌ی پاسخ دریافت شده، عمل ریدایرکت را انجام بدهد، متوجه آسیب پذیری در وب‎سایت مدنظر می‌شویم.
برای اطمینان از ایمن بودن برنامه‌ها در مقابل این آسیب پذیری، لازم است اقدامات زیر را انجام دهید:
اگر از عمل ریدایرکشن استفاده می‌کنید، از آدرس url مقصد، در پارامتر ورودی کاربر استفاده نکنید.
حتی الامکان از نام کوتاه، id یا توکن ای برای مقصد ریدایرکت ها استفاده کنید، که در سمت سرور به آدرس مقصد منطبق شده باشد.
اگر نمی‌توانید از ورودی کاربر جلوگیری کنید، مطمئن شوید که مقادیری که از طرف کاربران وارد می‌شوند، معتبر، مرتبط با برنامه و در سطح دسترسی های کاربر باشند.
ورودی های کاربر را با یک لیست از مقصد های مجاز برای ریدایرکت، اعتبار سنجی کنید. دقت کنید که این رویکرد باید بر اساس یک لیست مجاز(allow-list) باشد و نه یک بلاک لیست(block list).