حاجز الأمان

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

الإصدار الحالي: 1.6.3

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

الإصدار الحالي: 1.6.3

المفهوم

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

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

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

ويأتي حاجز الأمان ليقدم حلاً لهذه المشاكل. وهو عبارة عن ملف php وحيد ومنفصل عن SPIP، يمكن تحديثه بشكل مستقل عن سائر النظام وهو متوافق مع كل إصادرات SPIP حتى القديمة منها.

الا ان هذا الملف لا يحل مكان ترقية حقيقية للنظام ولكنه يتيح صد بعض العمليات الخبيثة بانتظار التحديث النظيف.

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

عندما يتم اكتشاف ثغرة جديدة، يكفي تحديث هذا الحاجز للحؤول دون استغلالها مما يعطي الوقت الكافي لتحديث برمجيات SPIP عندما تسنح الفرصة.

التحميل

يمكن تحميل الإصدار الأحدث لهذا الحاجز من العنوان:
http://zone.spip.org/trac/spip-zone/browser/_core_/securite/

رابط التحميل:
http://zone.spip.org/trac/spip-zone...

يمكن كذلك الحصول عليه بواسطة SVN:
svn co svn://zone.spip.org/spip-zone/_core_/securite/

واسم الملف هو ecran_securite.php

التثبيت

هناك عدة طرق لتثبيت الحاجز:

على صعيد الموقع:

منذ الإصدار ٢.٠.٩ من SPIP، يكفي وضع الملف ecran_securite.php في مجلد config/ في أصل الموقع لكي يصبح فعالاً مباشرة.

أما في الإصدارات السابقة، فيجب إضافة المقطع التالي في ملف config/mes_options.php او ecrire/mes_options.php3، حسب إصدار SPIP (ويجب إنشاء هذا الملف اذا لم يكن موجوداً):

<?php
@include_once dirname(__FILE__).'/ecran_securite.php';
?>

فيتم تحميل الحاجز مباشرة بعد ملف mes_options.php.

على صعيد الخادم

يجب وضع هذا الملف في مجلد يمكن لكل المواقع الوصول اليه (مثلاً /usr/share/php/ecran_securite/).

تعديل ملف php.ini بإضافة الأسطر التالية اليه:

auto_prepend_file '/usr/share/php/ecran_securite/ecran_securite.php'

او تعديل ملف httpd.conf بإضافة:

php_admin_value auto_prepend_file '/usr/share/php/ecran_securite/ecran_securite.php'

في الحالتين يتم تحميل الحاجز لدى كل نداء php قبل تنفيذ الأوامر المطلوبة. بالتالي يمكنه صد اي نداء «خبيث».

الإعداد

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

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

هناك بعض الملحقات التي لا تتوافق مع قواعد الحاجز وتستخدم &id_x=new لإنشاء عنصر جديد x. بالتالي يجب على هذه الملحقات ان تصحح برمجياتها بسرعة حسب قواعد الحاجز لتتوافق مع الإصدار ٢.١ من SPIP.

التدقيق والاختبار

للتأكد من سلامة عمل أوامر الحاجز، يكفي ادخال عنوان الموقع وإلحاق هذا العنوان بعبارة ?test_ecran_securite=1 او &test_ecran_securite=1.

يجب عندها ان يعرض الموقع:

Error 403

You are not authorized to view this page (test 1.6.3) </quote

مؤلف George نُشر في: تم التحديث: 02/07/23

الترجمات: عربي, català, corsu, English, Español, فارسى, français, Nederlands