gpt4 book ai didi

javascript - 在 Angular 中使用持久性 CSRF-TOKEN cookie 的风险

转载 作者:行者123 更新时间:2023-11-30 12:22:04 26 4
gpt4 key购买 nike

这与这个问题有关CSRF Protection for Refresh Token Cookie in SPA

我想使用推荐的 XSRF-TOKEN cookie 机制来保护另一个 HttpOnly cookie。对于这种情况,我需要使 XSRF-TOKEN cookie 持久存在,因为它必须在应用程序重新加载后启动时可用。 Angular $http 中的默认实现仅在 session cookie 中查找。

如果我使 cookie 持久化并手动设置 X-XSRF-TOKEN HTTP header ,会有什么风险?

最佳答案

What are risks if I make the cookie persistent and manually set the X-XSRF-TOKEN HTTP header?

风险在于攻击者最终可能会暴力破解 token 值。

建议每个 session 使用一个新的 CSRF token 。如果你让它持久化,那么恶意站点可能会继续尝试提交一个跨站点请求,每次都包含不同的 token 值。最终它将尝试 token 字符的每一种组合并成功发出请求。

但实际上,用户必须同时且每次都访问恶意网站。记住用户打开的选项卡并每次自动加载的浏览器可能会发生这种情况。

您还可以内置一些暴力破解保护。例如,在使用无效的 CSRF token 发出 10 次请求后,您可以中止 session ,然后通知用户他们已注销。这将减轻暴力攻击,但是这会将攻击转换为拒绝服务攻击,因为恶意网站将成功注销用户。因此,您应该通过联系用户并告知他们他们正在访问的网站试图破坏他们来跟进此事(您可以检查您的服务器日志以确定 refererorigin header )。

关于javascript - 在 Angular 中使用持久性 CSRF-TOKEN cookie 的风险,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30666867/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com