شرح صفوف ومحتوى الفقرة
بمجرد تسجيل دخول المستخدم، يعمل معرف الجلسة (PHPSESSID) كمفتاح مصادقة مؤقت؛ ويستهدفه المهاجمون عبر مسارين رئيسيين: اختطاف الجلسة (Hijacking) وتثبيت الجلسة (Fixation).
- اختطاف الجلسة (Session Hijacking): يسرق المهاجم كوكيز
PHPSESSIDالنشطة عبر ثغرة XSS (document.cookie) أو عبر اتصال HTTP غير مشفر. - تثبيت الجلسة (Session Fixation): يخدع المهاجم الضحية لاستخدام معرف جلسة معروف مسبقاً قبل الدخول، ثم يستحوذ على الحساب فور توثيق الضحية لتلك الجلسة.
- يؤدي ضبط إعدادات الجلسة الصارمة وتدوير المعرف عند الدخول إلى إحباط كلا الهجومين.
يوضح فحص طبقة النقل أهمية منع إرسال كوكيز الجلسة عبر اتصالات HTTP غير المشفرة في بيئة الإنتاج.
PHP
<?php
// Verify whether the current request arrived over HTTPS
$isHttps = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off')
|| (($_SERVER['SERVER_PORT'] ?? 80) == 443);
echo "HTTPS Transport : " . ($isHttps ? "Encrypted" : "Plain HTTP") . "\n";
echo "Session Cookie : Must use Secure + HttpOnly + Strict Mode\n";