安全和会话

时间:2014-01-03 19:45:52

标签: php security session

我已准备好几篇关于会话安全性的文章,但我没有看到任何特别涉及我特定代码的内容。我对网站的安全性非常偏执,因为它有敏感的信息。

我的每个页面都以这行代码开头:

session_start();

if(!isset($_SESSION["username"]))
{
header("Location: login.html");
}

这足够安全吗?我是PHP的新手,但我读的越多,我就越偏执。有人可以简单地设置一个名为username的会话,并使其看起来像我的网站设置以获取访问权限吗?

1 个答案:

答案 0 :(得分:2)

$_SESSION值纯粹是服务器端,无法从客户端篡改。

很难说出您可能面临的其他问题,因为这只是您登录系统的一部分,而且还有许多其他问题可能会让您失望。

我们可以看到的一个问题是,在失败的情况下,您只需设置header,而不是之后停止脚本(例如使用die())。即使用户未登录,该if语句下的任何代码仍将执行,因此如果您有任何操作,用户可以执行它们而无需任何身份验证。