我正在使用SSL传输所有数据。 HTTP已完全禁用。缺少恶意软件或访问某些物理机器(这两者都很难从服务器端防止),我看不到攻击者如何窃取登录cookie。
因此,可以不担心窃取登录cookie吗?
正确实施不可盗取的登录cookie的复杂性仍然允许用户在不同的浏览器和不同的机器上进行会话,这比其保护的材料要高。
因此,我认为不能安全地防止从机器到机器的复制和粘贴cookie数据。
这是一个有效的权衡,还是我忘记了一些关键的东西。
答案 0 :(得分:4)
您确实需要确保在Cookie上设置了Secure
标记,因为通常无法阻止用户尝试通过非SSL访问您的网站。否则,我相信你应该没事。
那就是说,我建议采取合理的预防措施。例如:
HttpOnly
标记,以便任何可能不受信任的JavaScript都无法窃取它们。答案 1 :(得分:1)
根据定义,“记住我”cookie会使您的Web服务的安全性超出您的控制范围。现在,一般来说,任何可以劫持该cookie的人(尤其是复杂的攻击者)都可以以该用户身份登录。
让我们举一个现实世界的例子:Google为其服务使用类似的Cookie。您可以一次登录数周。根据我的观察,它减轻cookie攻击的方式是在cookie检测到服务器端的可疑活动时使cookie无效。例如,如果我通常从加利福尼亚登录,我突然从另一个州/国家登录(或者从其他地方同时进行会话!)我可能会被注销并被迫重新进行身份验证。当然,这不是万无一失的,但可以使用使用模式来阻止某些攻击。
另外,请记住,cookie将是特定于浏览器的。例如,如果浏览器指纹用于确定用户刚从其他OS /浏览器/等登录,则可能是使cookie无效的好时机。如果浏览器的次要版本升级,也许您可以获得幻想并允许一定的余地,但如果浏览器版本被降级,则标记它。