0

我使用代表 user_agent 和 user_ip 的会话哈希码

我也使用 session_set_cookie_params 在登录脚本中设置记住。

我的安全状况如何?在记住我时使用 setcookie 而不是 set_session_cookie_params 不是更好吗?我应该使用哪些功能来提高安全性?

对不起,我的英语不好

4

1 回答 1

1

如评论中所述,您实际上并没有进行安全设置。关于安全性,有很多事情需要考虑,但一个好的开始是考虑以下几点:

  • 会话劫持/固定
  • SQL 注入
  • XSS(跨服务器脚本)
  • 蛮力攻击

一个好的初学者资源首先是查看phpacademy

我也链接了几次。我认为这是一个很好的 PDO 登录系统示例,它将帮助您避免 SQL 注入攻击。

假设您可以访问您的php.ini文件,您可能需要查看这些命令的作用。它们可能符合您的需求,也可能不符合您的需求,但它们可以通过不允许通过 URL 传递 PHPSESSID 变量并使其无法通过 JavaScript 访问来帮助避免会话劫持/固定。

session.use_only_cookies = 1
session.cookie_httponly = 1
session.use_trans_sid = 0

可以通过使用适当的散列来减轻蛮力攻击。查看 bcrypt 或 scrypt 以获取更多详细信息。您还可以查看此讨论以获取更多信息。

于 2013-07-18T16:33:11.670 回答