JWT 如何被恶意劫持了怎么办?会出现这种情况吗?

JWT 头部(header)、载荷(payload)与签名(signature)如果都被盗取的话,在有效期内是不是就不是安全的啊,还是说没有人那么牛,三部分都能获得到。

桃知夭夭
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 8
leo

所有的 token 都有这个问题啊,有个简单的解决方案就是签发 token 的时候把用户的 ip 也放到 jwt 的 payload 里,每次交易 token 的同时也校验 ip

6年前 评论
LLLLL1998 4年前

不好避免,其他认证几乎也一样吧,使用 HTTPS协议吧

6年前 评论

最極端的情況也只有用戶本人的電腦被人入侵並盜取 Token
不過這種漏洞不容易發生大規模的危害,頂多就是 1. 2 個用戶會發生,因解析及簽發 JWT 的 Secret 仍在你的 Server 上
要防範的話可能得紀錄使用者每次登入的 IP,若有差異即通知使用者,由使用者決定是否要加強帳號安全性

6年前 评论

@hedeqiang 这样的话,应该相对安全了~哈哈

6年前 评论

产生这个疑问的原因是没有明白JWT是什么,JSON Web Tokens 的缩写,解决的是认证与授权的问题,至于Token被劫持,中间人攻击等和别的认证方式一样都是会存在的,解决方法也是有的

1.使用HTTPS
2.登录成功返回JWT时记录下客户端的IP

6年前 评论

@leo 如何把 ip 也放到 jwt 的 payload 里

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!