Translate

شرح ثغرات Unvalidated Redirects
الزيارات:

Abdelhak ASSAGDI | 2:09 م |

شرح ثغرات Unvalidated Redirects 



السلام عليكم

قبل أن أبدأ بشرح ثغرات ال Unvalidated Redirects
دعونا نعطي مثال بسيط حتي نفهم فكرة ال  (التحويل)Redirection
المستخدم تلقي رسالة علي بريده الإلكتروني بالمحتوي التالي:
عزيزي المستخدم .. يمكنك زيارة المدونة الخاصة بموقعنا من خلال الرابط التالي:
http://www.litgeni.blogspot.com/link.php?url=http://litgeni.blogspot.com
إذا عندما يقوم المستخدم بالضغط علي الرابط بالإعلي فإنه سيتم توجيهة إل http://litgeni.blogspot.com
إذا كيف يمكن إستغلال الرابط أعلاه؟
الأمر بسيط جدا .. حيث سيقوم المهاجم/المخترق بإستبدال الرابط الذي سيتم تحويل المستخدم إليه برابط آخر تابع له حتي يتم تحويل المستخدم إلي موقع المهاجم.
مثال:
عزيزي المستخدم .. يمكنك زيارة المدونة الخاصة بموقعنا من خلال الرابط التالي:
http://www.litgeni.blogspot.com/link.php?url=http://blog.attacker.com
إذا عندما يقوم المستخدم بالضغط علي الرابط بالإعلي فإنه سيتم توجيهة إليhttp://blog.attacker.com
ولكن كما تري فقد تم تحويل المستخدم من خلال موقع litgeni.blogspot.comو الذي يفترض به ان يكون موقع موثوق لدي المستخدمين.
ما هي الخطورة التي ستقع علي المستخدم من خلال هذا النوع من الثغرات؟
1- تحويل المستخدم إلي صفحات تسجيل دخول مزورة شبيهه تماما لنفس صفحة تسجيل الدخول الخاصة بالموقع الأصلي وربما يكون إسم النطاق(Domain name)  أيضا شبيه لنفس إسم النطاق الخاص بالموقع الأصلي وبالتالي سرقة بيانات تسجيل الدخول الخاصة بالمستخدم.
مثال: بدلا من أن يتم تحويلك لموقع الفيس بوك www.facebook.com يتم تحويلك لموقعwww.faecbook.com   هل لاحظت الفارق؟
2- تنزيل ملفات خبيثة (Trojans) علي أجهزة المستخدمين .. حيث يمكن للمهاجم تحويل المستخدم علي صفحه تستغل ثغرة في البرمجيات المنصبة علي جهاز المستخدم .. برمجيات مثل Java, Flash Player, Adobe Reader وغيرها
إذا ما السبب في حدوث تلك الثغرة؟ وكيف للمبرمج أن يحمي نفسه منها؟
الخطأ ان المبرمج لا يستخدم أي نوع من أنواع التحقق(validation) حتي يتأكد من الرابط الذي سيتم تحويل المستخدم إليه!
بعض طرق الحماية من تلك الثغرة:
1- Security Tokens
ما هي ال Security tokens
هي أرقام يتم تكوينها بنوع ما من التشفير(علي حسب المبرمج) وكمثال فهي تكون تجميعه من رابط الموقع + التوقيت الحالي + Salt
اذا وظيفة الToken في هذه الحالة هي التأكد من أن الرابط الذي سيتم تحويل المستخدم إليه هو رابط موثوق منه ومسجل في قاعدة بيانات الموقع ولم يتم التلاعب به لان كل رابط يكون له Security Token واحد فقط.
2- Black & White List
حيث يقوم المبرمج بإنشاء قائمة من المواقع الموثوق بها والتي يتم تحويل المستخدمين إليها وما عدا تلك المواقع فلا يتم تحويل المستخدم الي أي شئ اخر بل يظهر صفحة خطا في حالة تم التلاعب بالموقع الذي يتم تحويل المستخدم إليه.
نأتي هنا لمثال عملي علي موقع شركة Kaspersky عملاق شركات إنتاج برمجيات الأمن المعلوماتي .. حيث كان الموقع مصاب بثغرة من هذا النوع الذي نتحدث عنه اليوم...
تخيل معي عزيزي القارئ  رابط يأتيك من شركة كاسبرسكي(وهي مصدر موثوق لا محاله) ويطلب منك تحميل ملف! أو صفحه يتم تحويلك إليها من موقع كاسبركي وتطلب منك بيانات معينه او تعرض عليك تنزيل آخر إصدار من برنامج كاسبرسكي المدفوع وبشكل مجاني!
مؤخود من ااجل الافادة.


اثبت وجودك لاتقرا وترحل.....
<3>3

0 comments: