gpt4 book ai didi

rest - 具有 CSRF 和 XSS 保护的无状态 REST API

转载 作者:行者123 更新时间:2023-12-04 17:44:40 25 4
gpt4 key购买 nike

是否可以保护无状态 REST API 免受 XSS 和 CSRF 攻击?

目前,我使用存储在安全/httpOnly cookie 中的 JWT token 进行无状态身份验证。这应该可以保护 API 免受最常见的 XSS 攻击:使用注入(inject) XSS 的 JavaScript 窃取 cookie 并将其发送给攻击者。

然而,这并不能保护 API 免受 CSRF 攻击,在这种攻击中,攻击者会欺骗经过身份验证的用户跟随特定 Web API 调用的链接,以代表受害者启动不利交易。我如何保护 API 免受这种攻击 不引入服务器端状态 ?

另外,XSS 漏洞是否真的会在以下场景中继承允许 CSRF 类型的攻击: 注入(inject)的 JavaScript 会从客户端状态、DOM 或浏览器存储中检索 CSRF token ,并准备对服务器进行恶意的 ajax 调用。浏览器仍会自动为同一源请求包含 httpOnly cookie。除了首先防止 XSS 漏洞之外,还有什么方法可以防止这种情况发生?

最佳答案

您可以生成一个 token (例如 UUID)并将其放入 jwt token 以及将其发送回客户端。然后客户端在 header 中的每个请求期间发送它。然后服务器可以比较 header 中的 token 和 jwt token 中的 token ,以确保请求来自已验证的客户端。

关于rest - 具有 CSRF 和 XSS 保护的无状态 REST API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52717793/

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