0 تصويتات
في تصنيف المواقع والتطوير بواسطة مجهول
ما هو Content Security Policy (CSP)؟

1 إجابة واحدة

0 تصويتات
بواسطة admin6 (1.2مليون نقاط)

ما هو Content Security Policy (CSP)؟

Content Security Policy أو سياسة أمان المحتوى (CSP) هي ميزة أمان ويب تُمكن مسؤولي المواقع والمطورين من التحكم في الموارد التي يمكن تحميلها وتشغيلها على صفحات الويب الخاصة بهم. ببساطة، CSP هي طبقة حماية تمنع تنفيذ الأكواد أو تحميل المحتويات الضارة التي قد تؤدي إلى هجمات مثل حقن السكريبتات (XSS) أو استغلال الثغرات الأمنية.

تهدف سياسة أمان المحتوى إلى تقليل المخاطر الأمنية المرتبطة بتشغيل الأكواد الضارة من مصادر غير موثوقة عن طريق تحديد مصادر موثوقة فقط لتحميل وتنفيذ الموارد، مثل السكريبتات، الصور، الخطوط، وأطر العمل. يتم ذلك من خلال قواعد تُرسلها الخوادم للمستعرضات عبر رؤوس HTTP (HTTP headers) أو عبر وسم ميتا في صفحات HTML.

كيف تعمل سياسة أمان المحتوى (CSP)؟

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

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

مكونات سياسة أمان المحتوى

تعتمد سياسة CSP على عدة توجيهات (directives) تحكم أنواع الموارد المسموح بتحميلها ومصادرها، ومن أبرز هذه التوجيهات:

  • default-src: المصدر الافتراضي لجميع الموارد التي لم تُحدد لها قواعد خاصة.
  • script-src: تحدد المصادر المسموح بتحميل وتشغيل السكريبتات منها.
  • style-src: تتحكم في تحميل أنماط CSS.
  • img-src: تفرض قيودًا على تحميل الصور.
  • font-src: تتحكم بمصادر الخطوط المستخدمة في الصفحة.
  • connect-src: تحديد نقاط النهاية المسموح بها للطلبات مثل AJAX أو WebSocket.

يمكن تضمين سياسات أخرى خاصة بالسلوكيات الأكثر دقة مثل السماح بالاستخدام المؤقت لسكربتات داخلية أو قيود على استدعاء الصور والفيديوهات وغيرها.

لماذا تعتبر CSP ضرورية؟

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

سياسة أمان المحتوى تأتي كأحد الحلول الفعالة لتعزيز أمان المواقع عبر تقليل مخاطر هذه الهجمات. باستخدام CSP، يمكن للمطورين التحكم بمصادر الأكواد والمحتويات التي يتم تحميلها وتنفيذها، مما يجعل المواقع أكثر أمانًا ويقلل من فرص الاختراق.

كيف يتم تفعيل سياسة أمان المحتوى؟

يمكن تطبيق CSP عبر إضافة رأس HTTP باسم Content-Security-Policy في إعدادات الخادم، أو عن طريق وسم meta في ملف HTML. على سبيل المثال، يمكن تحديد سياسة ترغب في السماح بها كما يلي:

Content-Security-Policy: script-src 'self' https://apis.example.com; object-src 'none';

هذا المثال يسمح فقط بتشغيل السكريبتات من نفس الموقع (self) ونطاق محدد (apis.example.com)* ويمنع تحميل أي OBJects.

يُنصح بالبدء بسياسة CSP صارمة ثم تعديلها تدريجيًا حسب حاجة الموقع لتجنب تعطيل وظائف شرعية بسبب القيود الزائدة.

مرحبًا بك في موقع اسألني، منصة عربية متخصصة في طرح الأسئلة والإجابة عليها. يمكنك بسهولة طرح أي سؤال يدور في ذهنك، وسيقوم مجتمع المستخدمين بمساعدتك من خلال تقديم إجابات مفيدة ومعلومات قيّمة في مختلف المجالات.
...