freeCodeCamp/guide/arabic/php/security/session-hijacking/index.md

1.7 KiB

title localeTitle
Session Hijacking اختطاف الجلسة

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

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

الدفاع ضد هجمات اختطاف الجلسة في PHP

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

`<?php session_start();

// Does IP Address match? if (_SERVER['REMOTE_ADDR'] != _SESSION['ipaddress']) { session_unset(); session_destroy(); }

// Does user agent match? if (_SERVER['HTTP_USER_AGENT'] != _SESSION['useragent']) { session_unset(); session_destroy(); }

// Is the last access over an hour ago? if (time() > ($_SESSION['lastaccess'] + 3600)) { session_unset(); session_destroy(); } else { $_SESSION['lastaccess'] = time(); } `

معلومات اكثر: