【问题标题】:Can people modify/create cookies on my websites domain? [closed]人们可以在我的网站域上修改/创建 cookie 吗? [关闭]
【发布时间】:2015-06-25 15:15:07
【问题描述】:

我有一个网站,并且正在使用 cookie 制作登录系统,以便用户可以保持登录状态,我相信您无法通过会话来做到这一点。我想知道恶意用户是否可以创建或修改域上的现有 cookie。我知道他们可以删除它们,这很好,但他们可以创建或修改它们吗?

【问题讨论】:

  • 编辑/创建cookies非常容易,你最好用php会话来做。会话将保持活动状态,直到用户清除其 cookie 或您使用 session_destroy(); 函数
  • 当然。您永远不能信任来自客户端的任何数据。
  • @HarrisonPickering 你是什么意思“我相信你不能用会话做”你可以用会话做并且应该用会话做。
  • @JameyD:向客户端发送散列密码是个坏主意。会话应该是签名的、随机的、可撤销的令牌。

标签: javascript php cookies web


【解决方案1】:

任何人都可以随意控制自己的浏览器。他们可以创建、编辑和删除 cookie。

因此,您的 cookie 应该是长且随机的(或者至少看起来随机到与随机无法区分的程度)。

它们应该对您的服务器有意义,应该能够将它们与用户相关联,但对您服务器之外的任何人都没有意义。它们应该足够长且足够复杂,以至于在统计上不可能猜到一个。

您的服务器应注意不要对其接收到的 cookie 值做出任何假设。例如,我可以提交一个包含 2,000 个字符的 cookie - 这一定不会导致它崩溃。

【讨论】:

  • 感谢您的回复。 :)
【解决方案2】:

您可以创建、删除和编辑您的浏览器 cookie,任何有权访问您计算机的人都可以读取和复制它们,以便您窃取会话 ID。

您不能手动修改会话,因为这是“服务器 cookie”,只有服务器软件可以做到。如果您想存储密码或其他机密信息,则不应将其存储在 cookie 中。它不安全,您可以存储令牌或会话 ID,但不能存储密码等信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-26
    • 1970-01-01
    • 1970-01-01
    • 2017-04-15
    • 2014-03-04
    • 2011-12-18
    • 2015-02-24
    • 2018-06-28
    相关资源
    最近更新 更多