بعد أن قمنا بتشفير كلمات المرور في المقال السابق، يأتي الآن دور تأمين "جلسة المستخدم" (Session). فبدون حماية الجلسة، يمكن للمخترق سرقة هوية المستخدم حتى لو كانت كلمة مروره مشفرة.
ما هي مخاطر الجلسات غير المحمية؟
بدون إعدادات أمان، يمكن للمهاجم سرقة ملف تعريف الارتباط (Session Cookie) وانتحال شخصية المستخدم. إليك الإعدادات الأساسية لزيادة أمان جلساتك في PHP:
الكود البرمجي لحماية الجلسة:
<?php
// تفعيل الأمان للجلسات
ini_set('session.cookie_httponly', 1); // منع الوصول للجلسة عبر JavaScript
ini_set('session.use_strict_mode', 1); // منع استخدام معرفات جلسة غير صالحة
session_start();
// إعادة إنشاء معرف الجلسة لمنع الهجمات
session_regenerate_id(true);
?>
نصيحة أمنية:
استخدم دائماً session_regenerate_id(true) عند تسجيل دخول المستخدم، فهذا يمنع هجمات تثبيت الجلسة (Session Fixation) بشكل فعال.
