سؤال

يبدو أن عدم الانعكاس في بيئات استضافة الثقة المتوسطة يبدو تسبب الكثير من المشاكل للعديد من تطبيقات الويب الشعبية.

  • لماذا antrectionpermission. تعطيل افتراضيا مع الثقة المتوسطة؟
  • ما المخاطرة التي تشكل انعكاس في بيئة استضافة مشتركة؟

لمرجع عشوائي، انظر MSDN: كيفية استخدام الثقة المتوسطة في ASP.NET 2.0

هل كانت مفيدة؟

المحلول

الانعكاس يسمح رمز ضار لتفقد جميع أنواع الأسرار: ليس الكثير من الملكية الفكرية (على الرغم من التأكد، ذلك أيضا)، ولكن البيانات التي يجب أن تكون خاصة وآمنة، مثل سلاسل الاتصال، كلمات المرور، بيانات الحساب المصرفي، إلخ.

بطبيعة الحال، تعرض العديد من البرامج هذه البيانات كمسألة مسألة من خلال مقاولات محرومة بسهولة أكبر، ولكن ليس هناك سبب لزيادة سطح هجوم التطبيق.

تم تحريره لجلب بعض المحادثة من التعليقات:

ربما صحيح أن المخاطر الحقيقية هي الوصول غير المقيد في نظام الملفات، وهو ما يتحول إلى انعكاس في خطر حقيقي. إذا كان يمكن للممثل السيئ الحصول على تجميع (أو شيء يتم تجميعه في تجميع) في الدليل الظاهري الخاص بك، فأنت في ورطة إذا كان لديهم إذن انعكاس. (بالطبع إذا حدث هذا، فهناك مشاكل محتملة أخرى أيضا، ولكن لا ينبغي أن تخفض هذه الضعف بشكل خاص.)

في بيئة استضافة مشتركة يصعب منعها فقط، على الرغم من أنها ليست مستحيلة بالتأكيد. ربما يستحق نشر هذا السؤال ServerFault. لمعرفة ما يقوله الناس الجيدين.

نصائح أخرى

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

على الأرجح، إنه على الأقل في جزء من تقنية مبيعات لتحملك لإخراج استضافة مخصصة (شبه) :)

لقد وجدت مقالة MSDN التالية حول هذا الموضوع:

الاعتبارات الأمنية للانعكاس

وجواب Echo's Jeff's Jads:

يوفر الانعكاس القدرة على الحصول على معلومات حول الأنواع والأعضاء، والوصول إلى الأعضاء. يمكن الوصول إلى الأعضاء غير العامين خلق مخاطر أمنية. لذلك، يتطلب التعليمات البرمجية التي تصل إلى أعضاء غير عامين إنكسترا مع الأعلام المناسبة.

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

قد يشكل ذلك مشكلة لتطبيق ويب واحد ينطوي على فرق تطوير متعددة. يمكن لفريق تطوير واحد استخدام التفكير لاستكشاف جمعيات فريق تطوير آخر.

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

يجب ألا يشكل التأمل التمكين أي مخاطر بالنسبة لمعظم تطبيقات الويب الخاصة بالمتضافة المشتركة:

<IPermission class="ReflectionPermission" version="1" Flags="RestrictedMemberAccess"/>

أرجوا أن تصحح لي إذا كنت مخطئا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top