تخط إلى المحتوى
English

سوء إعداد CORS

عكس الأصل والثقة بالأصل null ومطابقة لاحقة المضيف الطرق الثلاث التي تدع بها سياسة CORS المتساهلة موقعا معاديا يقرأ بيانات مصادق عليها

المسار
أمن الويب
الوقت المتوقع
20 د
المستوى
متوسط
تقدمك في المسار0%

قبل هذا الدرس

سياسة المصدر الواحد تمنع موقعا من قراءة ردود موقع آخر المصادق عليها و CORS هو كيف يخفف الخادم ذلك عمدا وسياسة CORS المهملة تسلم المفتاح لأي موقع يزوره الضحية والتركيبة الخطرة واحدة دائما السماح بالاعتماد مع ترويسة سماح أصل يستطيع المهاجم أن يسمى فيها

ما هي الثغرة؟

  • عكس الأصل الخادم يعكس أي Origin يصله في ترويسة السماح مع الاعتماد فكل أصل ومنه أصل المهاجم مسموح
  • الأصل null الخادم يضيف null إلى المسموح لكن null هو بالضبط ما ترسله صفحة في إطار معزول أو عنوان data فينتجه المهاجم متى شاء
  • مطابقة اللاحقة الخادم يسمح بأي مضيف ينتهي بـ ravens.lab فيمر evil-ravens.lab وهو نطاق يسجله المهاجم

لماذا تحدث؟

السماح بالاعتماد لا يجتمع مع العلامة الشاملة فيلجأ المبرمج لقيمة ديناميكية يعكس الأصل أو يطابقه بتساهل وكل اختصار يحول قائمة السماح إلى الجميع

كيف تتوقف؟

احتفظ بقائمة سماح ثابتة بأصول موثوقة تامة وطابقها بمطابقة تامة لا تعكس أصل الطلب ولا تسمح بـ null ولا تستخدم فحص لاحقة أو احتواء وإن كان الرد لا يحتاج اعتمادا فلا تضع ترويسة السماح بالاعتماد إطلاقا

اللابات الثلاثة أدناه تمشي هذا اقرأ الرد من أصل معكوس ومن null ومن تجاوز مطابقة اللاحقة

اللابات

  • عكس الأصل

    سهللاب في المتصفح

    اجعل صفحة على أصلك تقرأ رد الحساب

  • الأصل null

    متوسطلاب في المتصفح

    اقرأ رد الحساب باستخدام الأصل null

  • مطابقة اللاحقة

    صعبلاب في المتصفح

    اقرأ رد الحساب من أصل يتجاوز فحص اللاحقة