6 نصائح أمنية أساسية لحماية موقع PHP الخاص بك من المتسللين

تم إطلاق موقع PHP الخاص بك. تهانينا! لكن مهلا .. هل اهتممت بالتشديد الأمني ​​الأساسي؟

PHP هي لغة برمجة خلفية خفيفة الوزن لكنها قوية جدًا. يشغل حوالي 80٪ من تطبيقات الويب العالمية ، مما يجعلها واحدة من أكثر اللغات استخدامًا في عالم التطوير.

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

أحد الأمثلة الرائعة هو WordPress.

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

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

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

البرمجة النصية عبر المواقع (XSS)

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

  إصلاح NVIDIA Geforce Experience C ++ Runtime Error

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

يمكنك مواجهة هذا الهجوم باستخدام أحرف HTML الخاصة & ENT_QUOTES في أكواد التطبيق. باستخدام ENT_QUOTES ، يمكنك إزالة خيارات الاقتباس الفردي والمزدوج ، والتي تتيح لك التخلص من أي احتمال لهجوم البرمجة النصية عبر المواقع.

تزوير طلب عبر المواقع (CSRF)

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

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

اختطاف الجلسة

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

  كيفية جدولة حذف الملفات في Dropbox

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

منع هجمات حقن SQL

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

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

استخدم دائمًا شهادات SSL

للحصول على نقل بيانات آمن من طرف إلى طرف عبر الإنترنت ، استخدم دائمًا شهادات SSL في تطبيقاتك. إنه بروتوكول قياسي معترف به عالميًا يُعرف باسم Hypertext Transfer Protocol (HTTPS) لنقل البيانات بين الخوادم بشكل آمن. باستخدام شهادة SSL ، يحصل تطبيقك على مسار آمن لنقل البيانات ، مما يجعل من المستحيل تقريبًا على المتسللين التطفل على خوادمك.

  كيفية تكبير Microsoft Teams

توصي جميع متصفحات الويب الرئيسية مثل Google Chrome و Safari و Firefox و Opera وغيرها باستخدام شهادة SSL ، حيث توفر بروتوكولًا مشفرًا لنقل البيانات واستلامها وفك تشفيرها عبر الإنترنت.

إخفاء الملفات من المتصفح

توجد بنية دليل محددة في أطر عمل PHP الصغيرة ، والتي تضمن تخزين ملفات إطار العمل المهمة مثل وحدات التحكم ، والنماذج ، وملف التكوين (.yaml) ، وما إلى ذلك.

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

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

استنتاج

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

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