تثبت هجمات المتسللين المتكررة أن أمان الويب يظل أهم مشكلة لأي شخص يقوم بأعمال تجارية على الإنترنت. غالبًا ما تكون الخوادم أهدافًا لهذه الهجمات بسبب المعلومات التي تخزنها. هذا هو السبب في أنه من الضروري ضمان حماية موثوقة للخادم.
تأمين PHP على Apache
ابدأ بروتوكول "phpinfo ()" وتحقق من السطر الذي يحتوي على الأمر "open_basedir". باستخدام هذا الأمر ، يمكنك تحديد الدليل الأساسي لجميع المستخدمين. بعد تعيين هذه القيمة ، لن يتمكنوا بعد الآن من فتح الملفات خارج هذا المجلد الجذر أو الدلائل الفرعية الخاصة به مثل "C: / Windows".
إذا كانت لديك أدلة هيكلية أخرى ، فقم بتعريفها كدليل أساسي باستخدام الأمر "www_root". ومع ذلك ، سيتمكن مستخدم واحد أيضًا من قراءة ملفات مستخدم آخر وتعديلها. يجب منع هذا.
للأسف ، لا توجد خيارات في ملف php.ini لمنع مستخدم من الوصول إلى بيانات مستخدم آخر.
ولكن هناك طريقة واحدة مثيرة للاهتمام إذا كانت PHP تعمل على Apache. في phpinfo () ستجد عمودين: القيمة الأساسية والقيمة المحلية. الأول هو القيمة في "php.ini". الثانية هي القيمة التي يتم تحديدها أثناء تشغيل الخادم.
إذا كانت القيمة الرئيسية صغيرة من الناحية العددية ، فيمكن تغييرها في البرنامج النصي باستخدام الأمر "ini_set ()". لا ينطبق هذا على "open_basedir" لأن هذه القيمة مهمة للأمان ولا يمكن تغييرها إلا من قبل المسؤول.
في Apache ، يمكن تحديد ملف التكوين "httpd.conf" في الدليل تحت القيمة المحلية "open_basedir".
إعدادات PHP الأخرى
من خلال تعيين "disable_functions" في ملف "php.ini" ، يجب تعطيل الوظائف التي يحتمل أن تكون خطرة.
فكر مليًا في كل إجراء تتخذه. يعني تعطيل الوظيفة أن بعض البرامج النصية ستتوقف عن العمل.
بعض الميزات خطيرة حقًا وليست مطلوبة عادةً للبرمجة النصية. قد تكون هناك حاجة للآخرين لأغراض محددة. لذلك ، ليس من السهل تعطيل جميع الوظائف التي قد تكون خطيرة ، ولكن عليك أيضًا موازنة قراراتك بعناية.
لا تعتقد أن وظيفة "safe_mode = On" وحدها ستكون كافية. قد يقوم بتعطيل بعض الميزات المفيدة وقد لا يحل مشكلة الأمان الموضحة أعلاه. تم إهمال الوضع الآمن في PHP 5.3.0 وإزالته في PHP 6.0.0.
قضايا الحماية
هناك العديد من الأخطاء التي يمكن لمطور الويب ارتكابها وجعل موقع الويب غير آمن.
على سبيل المثال ، إذا أنشأت مدونتك وسمحت للمستخدمين بتحميل الصور ، فقد يكون هذا خطرًا خطيرًا عندما يكتب الشفرة بواسطة مبتدئ. هناك العديد من الأخطاء التي يمكن للمبرمج ارتكابها في صفحة تسجيل الدخول ، وما إلى ذلك. أحد أكثر الأخطاء شيوعًا هو عدم وجود حظر على تنزيل الخوارزميات الضارة.
النقطة المهمة هي أن موقعًا واحدًا غير آمن على الاستضافة العامة يمثل تهديدًا للخادم بأكمله. كما أن تثبيت مشاريع مفتوحة المصدر مثل PHP-Nuke يمكن أن يكون محفوفًا بالمخاطر. تم بالفعل اكتشاف العديد من نقاط الضعف في مشاريع مماثلة.