我是 Web 开发的新手,我阅读了有关 CSRF、XSS 和会话劫持的信息。一种建议的解决方案是简单地使用 anonce
来检查请求的有效性。我用 PHP 编写了这个脚本来防止会话劫持。我认为它在精神上类似于重新生成会话 ID,因为标识符或它们的组合(会话 ID 和随机数)在每次请求时都会更改。
if(!isset($_SESSION["user"]["nonce"]) ||
$_SESSION["user"]["nonce"] == $_COOKIE["SITE_nonce"])
{
$nonce = md5(uniqid());
$_SESSION["user"]["nonce"] = $nonce
setcookie("SITE_nonce", $nonce, 0, "/path");
}
else
die("Invalid Request");
这够了吗?我真的不知道我是否能负担得起 SSL,而且我知道这将是会话劫持的一个很好的解决方案,但我希望对这种方法有所了解。我错过了什么吗?