我正在创建一个网站并使用 cookie 来跟踪用户登录。我存储在此 cookie 中的唯一信息是用户的用户名。
我是否应该加密用户名,即使它不是密码等敏感信息?
我注意到其他使用 cookie 跟踪登录的网站都加密了所有 cookie 信息。
如果我不这样做并且 cookie 中唯一的信息是用户名,可能会出现哪些潜在的安全威胁?
我正在创建一个网站并使用 cookie 来跟踪用户登录。我存储在此 cookie 中的唯一信息是用户的用户名。
我是否应该加密用户名,即使它不是密码等敏感信息?
我注意到其他使用 cookie 跟踪登录的网站都加密了所有 cookie 信息。
如果我不这样做并且 cookie 中唯一的信息是用户名,可能会出现哪些潜在的安全威胁?
忘记加密。您正在通过 cookie 跟踪用户登录,而 cookie 仅包含用户名。某人预测别人的用户名有多困难。如果您不加密会话信息,则总是存在有人嗅探 cookie 并劫持会话的威胁。但是在您的情况下,我认为用户不仅可以劫持单个会话,还可以通过更改 cookie 中的用户名来劫持每个登录会话。OWASP 建议通过加密安全的伪随机数生成器 (PRNG) 生成长度为 128 位的会话 ID。查看OWASP 会话管理以获取更多详细信息。
一旦根据 Web 应用程序代码中的 OWASP 会话管理指南配置会话管理,就可以建立加密隧道并通过加密隧道进行通信。很多人在登录部分使用 SSL,但是一旦用户通过身份验证,通信就会恢复为 HTTP。确保 cookie 也始终通过加密隧道进行通信。如果会话 cookie 是明文形式,则通过网络嗅探 cookie 的用户可以重放 cookie 并获得对用户帐户的访问权限。Firesheep是一个通过单击演示利用此漏洞的工具。