What: 什么是jwt
JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,主要应用于2个系统之间的授信场景。
也能用于身份token。
可以参考:
https://www.ruanyifeng.com/blog/2018/07/json_web_token-tutorial.html
可以使用
https://jwt.io/
查看jwt的三个组成部分:
How: jwt的保密性如何?
jwt除了密钥,其他基本是明文,所以保密性较低。
可以用:
https://github.com/brendan-rius/c-jwt-cracker
对它进行破解。
或者直接:
1 | npm install --global jwt-cracker |
即可破解jwt中的密钥。
然后在jwt.io上修改payload,填上密钥重新加密即可篡改原来的内容实现破解。
如何防御此类攻击
1。jwt基础上加上加密、摘要(类似于https/pgp协议),防止篡改、破解;
2。jwt中不存储敏感信息;