这个简单的加密求破解(自己弄得,想知道漏洞是什么)

231 阅读1分钟

通过传jwt生成的token作为参数判断是否登录的方式,一但抓取到token之后,其实相当于破解加密方式,跟传一个user_id 没什么区别,基于这种情况,我想到通过添加签名来解决问题

截屏2021-10-22 下午6.03.35.png

三个参数:

  • Authorization (JWT token) eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJleHAiOjE2MzQ5Mjk0ODB9.YSheIIx19pa0b1X3x73HOrbIcZy_cJ471YeYjnicI7c
  • Time (当前时间戳) 1634893543
  • Signature ( Authorization + Time 一定的规则生成的签名) a57e980960ec951e88eaa1351af92a96

目的

对 Authorization 进行二次加密, 进而验证登录是否有限

猜想

应用在发送短信验证码上可以吗?

发送短信验证码接口被抓到之后很容易被暴力调用

接口参数 mobile time signature

根据mobile和time通过一定的规则生成signature (生成的规则可以自己随意定制)

  • time有效期可以在服务端配置 超过时间 参数失效

  • 哪怕抓到这三个参数,判断mobile是否发送过 发送过显示 ** 秒后才能重新发送验证码

  • ip + 设备 限制发送次数

知道了生成signature 的规则就破解了

所以以上结论是在 内部员工不泄密的情况下才行