ماذا يعني التمثيل القانوني والضعف المحتمل لمواقع الويب

StackOverflow https://stackoverflow.com/questions/1167371

  •  19-09-2019
  •  | 
  •  

سؤال

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

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

المحلول

Canonicalisation هو العملية التي تأخذ بها إدخال، مثل اسم الملف، أو سلسلة، وتحويلها إلى تمثيل قياسي.

على سبيل المثال، إذا كان تطبيق الويب الخاص بك يسمح فقط بالوصول إلى الملفات ضمن C: MyDomites Mydomain، فكلما عادة أي إدخال يشير إلى أسماء الملفات غير مكنونية ليكون مسارا ماديا ومباشرا، بدلا من واحد يستخدم المسارات النسبية. إذا كنت ترغب في فتح C: مواقع الويب MyDomites سبيل المثال example.txt إدخال واحد في هذه الوظيفة قد يكون مثالا example.txt. من الصعب العمل إذا كان هذا يخرج من حدود موقع الويب الخاص بك، لذلك ستبدو وظيفة Canonicalisation في دليل التطبيق وتغيير هذا المسار النسبي إلى واحد مادي، C: مواقع الويب مثال example.txt. من الواضح أن هذا أسهل للتحقق من أنك تقوم ببساطة بسلسلة مقارنة عند بدء مسار الملف.

للحصول على مدخلات HTML التي تتخذ مدخلات مثل٪ 20 و Canonicalise لهم عن طريق إلغاء الاجزاء، لذلك سيجول هذا إلى مساحة. هذه فكرة جيدة حيث أن عدد طرق الترميز المختلفة عديدة، يعني canonicalisation أنك ستحقق من سلسلة فكفي فقط، بدلا من محاولة لتغطية جميع اختلافات الترميز.

في الأساس، تتناول المدخلات التي تعادل منطقيا وتحويلها إلى شكل قياسي يمكنك التصرف عليه.

نصائح أخرى

التفسير التالي هو من "أمان التطبيقات والتنمية" وجدت هنا:

3.11 تنشأ مشكلات التمثيل الكنسي مشكلات التمثيل الكنسي عند استخدام اسم المورد للتحكم في الوصول إلى الموارد. هناك طرق متعددة لتمثيل أسماء الموارد على نظام الكمبيوتر. قد يؤدي التطبيق الذي يتعاون فقط على اسم مورد للتحكم في الوصول إلى قرار التحكم في الوصول بشكل غير صحيح إذا تم تحديد الاسم بتنسيق غير معروف.

على سبيل المثال، في Windows، قد يتم تمثيل Notepad.exe بواسطة مجموعات الملفات والمسار التالية:

C: Windows System32 Notepad.exe

٪ systemroot٪ system32 notepad.exe

؟ c: windows system32 notepad.exe

المضيف C $ windows system32 notepad.exe

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

قد تشير العناصر التالية إلى مشكلات التمثيل القانوني المحتمل في التطبيق:

• قرارات التحكم في الوصول بناء على اسم الموارد.

• عدم تقليل اسم مورد إلى شكله الكنسي قبل الاستخدام.

من أجل تقليل مشكلات التمثيل الكنسي في التطبيق، تنفيذ الإجراءات التالية:

• لا تعتمد فقط على أسماء الموارد للتحكم في الوصول.

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

• استخدم آليات التحكم في الوصول المستندة إلى نظام التشغيل مثل الأذونات و ACL.

يعني Canonicalisation تقليل البيانات المستلمة إلى أبسط شكلها، يتم استخدامها للتحقق من صحة الإدخال.

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

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