【问题标题】:PHP User System SecurityPHP 用户系统安全
【发布时间】:2013-05-02 11:24:00
【问题描述】:

我有一个慈善机构的小型内部网站,它是工作人员登录以访问文件和名单。尽管它仅适用于某些用户,但它位于网络上,因此是公开的,因此我仍在考虑安全性。我需要您对以下内容的意见,因为我不是很有经验。

当用户登录时,我总是存储两个 cookie。第一个是他们的用户 id,第二个是 cookie id,因此人们不能只更改用户 id 并登录,cookie id 需要匹配。它与每页的数据库进行比较。问题是 cookie id 只是一个随机数,PC 无需任何时间循环通过几十万个组合来为每个用户找到匹配的 ID。那么我该如何阻止呢? PHP的uniqid够好吗?

除了 SQL 注入(已经阻止)之外,我还应该考虑哪些其他攻击

谢谢

【问题讨论】:

标签: php security cookies login


【解决方案1】:

将每个会话的客户端 IP 存储在服务器上。
如果会话的客户端 IP 发生变化,那就很可疑了。

另一件事是让会话终生难忘。
例如,如果在任意时间内什么都没发生,则使会话无效。

最后但同样重要的是,只在会话数据库中存储一个随机 ID 并将其映射到用户,而不是将用户 ID 直接存储到 cookie 中。

【讨论】:

  • 根据上一条评论,如果有效 ID 被猜到然后有人可以访问用户的帐户会发生什么。
  • @AnotherUser 不,您仍在将 ID 与客户端 IP 匹配。只有当入侵尝试来自与正确登录的客户端相同的 IP 时,它才会被盗。
猜你喜欢
  • 2015-09-10
  • 2016-10-16
  • 1970-01-01
  • 2011-04-04
  • 1970-01-01
  • 2012-02-12
  • 2015-02-22
  • 2012-07-13
  • 2020-12-29
相关资源
最近更新 更多