آشنایی با آسیب پذیری Open Redirect

آشنایی با آسیب پذیری Open Redirect

سلام خدمت دوستان عزیز

طبق بررسی که انجام دادم متوجه شدم در وب فارسی آموزش کاملی در مورد این باگ وجود نداره و به همین دلیل امروز تصمیم گرفتم در مورد آسیب پذیری Open Redirect صحبت کنم و شما را با این آسیب پذیری جالب آشنا کنم.

بدون شک یادگیری این آسیب پذیری در پروژه های تست نفوذ شما تاثیر به سزایی خواهد داشت.

آشنایی با آسیب پذیری Open Redirect

این آسیب پذیری در وب اپلیکیشن ها وجود داره و به دلیل اشتباهات برنامه نویس به وجود می آید که نفوذگر می تواند از طریق این آسیب پذیری لینک مخرب خودش را از طریق دامنه سایت اصلی (آسیب پذیر) برای کاربر اجرا کند.

به این مثال توجه کنید :

https://faranesh.com/redirect.php?page=http://bmansoori.ir

 

دراین مثال ورودی page در صفحه redirect.php سایت faranesh.com آسیب پذیر است.

ما با وارد کردن آدرس در ورودی که در مثال ما page است به سایت مورد نظر منتقل می شویم.

کاربرد این آسیب پذیری

از این آسیب پذیری می توان در حملات فیشینگ استفاده کرد.وقتی لینک برای قربانی ارسال می شود ، در بیشتر مواقع آدرس را به صورت کامل مشاهده نمی کند و فقط به ابتدای آدرس توجه می کند.

از آنجایی که ابتدای آدرس مربوط به یک سایت معتبر می باشد و آدرس اصلی است ، قربانی فریب می خورد.

توجه داشته باشید که این حفره امنیتی بسیار رایج است و در وب سایت هایی مثل گوگل  و فیسبوک این آسیب پذیری وجود داشته است.

امن سازی

برای برطرف کردن این مشکل باید ورودی های وب سایت را کنترل کنید.

  • از تغییر مسیرها (Redirect) و هدایت‌ها (Forwarding) اجتناب کنید.
  • از ورودی کاربر برای تعیین مقصد استفاده نکنید.
  • اگر از پارامترهای مقصد نمی‌توان اجتناب کرد، حتماً بررسی شود که مقادیر ارائه‌شده برای کاربر، مجاز و معتبر باشد.

گاهی ممکن است به‌طور کامل نتوان از تغییر مسیرها و هدایت‌ها اجتناب کرد، بنابراین باید توجه داشت که مقادیر ارائه‌شده حتماً مجاز و معتبر باشند.

روش‌های گوناگونی برای جلوگیری استفاده از داده‌های نامعتبر وجود دارد که در زیر بیان‌شده‌اند.

  • ایجاد یک لیست سفید یا Whitelist از صفحات مجاز وب‌سایت یا سایت‌های خارجی.
  • فقط اجازه تغییر مسیر یا هدایت در شرایط مناسب و خاص داده شود.
  • تغییر مسیرهای که مورداستفاده قرار نمی‌گیرند را غیرفعال نمایید.
  • تمامی درخواست‌های HTTP برای تغییر مسیری که استفاده نمی‌شود را اسکن نموده و آن‌ها را نادیده گرفته یا Ignore نمایید.

روش دیگر استفاده از فایروال قوی برای سرور است.

 

برای درک بهتر از اهمیت این حفره امنیتی لینک مقاله ای رو برای شما قرار می دهم که در آن نفوذگر با گزارش این آسیب پذیری در یک وب سایت مبلغ ۱۰۰ دلار جایزه دریافت کرده است.

در این مقاله نفوذگر مرحله به مرحله کار از تست نفوذ تا گزارش آسیب پذیری را شرح داده است.

لینک مقاله

 

برای درک بهتر موضوع ، نمونه ای از گزارش های انجام شده در مورد این آسیب پذیری رو براتون قرار میدم

شماره ۱ : دریافت جایزه ۵۰۰ دلاری از سایت shopify.com

شماره ۲ : دریافت جایزه ۵۰۰ دلاری از سایت shopify.com

شماره ۳ : دریافت جایزه ۵۰۰ دلاری از سایت hackerone.com

 

0 پاسخ

پاسخ دهید

میخواهید به بحث بپیوندید؟
مشارکت رایگان.

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *