所以我有几种不同的方法来尝试和防止会话劫持,一种使用HTTP_USER_AGENT
并检测会话期间是否发生了更改。这里的问题是,如果一个用户进入该网站在手机上,并从移动视图更改到桌面视图,用户代理的变化和用户得到以下错误:会话劫持安全
if (isset($_SESSION['HTTP_USER_AGENT']))
{
if ($_SESSION['HTTP_USER_AGENT'] != md5($_SERVER['HTTP_USER_AGENT']))
{
echo "Error: security issue #1 (Please use contact us if recieving this error)";
exit;
}
}
else
{
$_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);
}
现在我仍然需要这个小小的安全层,但我不希望出现错误消息,并且我希望网站保持可供用户查看。我应该怎么做?
为什么不使用SSL? – 01100110 2012-03-04 21:14:30
“我想继续检查用户代理是否匹配,但有时如果用户代理不匹配,我希望它可以。 - 你确定这张支票实际上对你有用吗? – Amber 2012-03-04 21:19:41
用户代理检查确实增加了绝对*无*安全性。如果您修复代码以根本不启用会话劫持,则可以删除该检查并确保您的用户获得更好的体验。如果你不这样做,反正你被搞砸了(而且Russion黑客会将你的网站打上:) – 2012-03-04 21:21:01