如何保护 JWT 令牌以避免将其从一台计算机共享到另一台计算机
Posted
技术标签:
【中文标题】如何保护 JWT 令牌以避免将其从一台计算机共享到另一台计算机【英文标题】:How to secure JWT token to avoid sharing it from one computer to another 【发布时间】:2021-07-04 23:48:39 【问题描述】:我目前正在使用具有 256 哈希算法的 JWT 令牌,每 5 分钟过期一次,现在我的问题是如何保护令牌以防止其将令牌从(Local Storage
或 Cookie
)复制到另一台计算机。有没有办法防止这种攻击?另请注意,我们在网站中也使用 SSL,但我们仍将其视为安全漏洞。有没有办法防止令牌从一台计算机复制到另一台计算机?
【问题讨论】:
【参考方案1】:首先,您不应该将您的令牌或秘密项目放在 localStorage 中,因为它会带来 XSS(跨站点脚本)的漏洞。这是因为 localStorage 始终可以通过 javascript 访问,而 XSS 可能会添加恶意脚本,将令牌发送到另一台服务器。
您应该使用http only flag 将您的令牌放在cookie 上。这样可以避免通过 javascript 访问它们。
我还建议阅读有关 cors 的内容,以便提供足够的保护以避免 CSRF(跨站点请求伪造)。
【讨论】:
感谢您的回答,非常有帮助!以上是关于如何保护 JWT 令牌以避免将其从一台计算机共享到另一台计算机的主要内容,如果未能解决你的问题,请参考以下文章
如何保护 ASP.NET Core Web API 免受被盗 JWT 令牌以进行模拟