越权漏洞危害相对于第一个漏洞来说小了一点,主要会泄露用户隐私数据、恶搞订单订单,大葱哥隐隐约约觉得还存在资产性漏洞,但涉及到资产的订单交易都需要验证码才能完成,这个短信验证码怎么破呢?
鸡肋的验证码漏洞
无聊的试试短信验证码接口吧,竟然发现短信验证码接口可以无限次调用,那岂不是存在验证码爆破的可能?用工具跑了下了发现果然可以暴力猜解,一般开发短信验证码时建议增加失败次数限制,而不能无限次猜解,而贝市场中仅仅做了10分钟得实现策略,而没有限制次数,十分钟理论来说可以爆破999999个验证码的,也就是能爆破成功,本机限制没有进行验证测试,只是觉得理论可行。
然并卵,这个有点鸡肋了,因为即使爆破了也没法利用,已经不能随意登录账号了,所以没有爆破的切入点。
短信验证码机制的猜测
猜测他这个验证码应该是存在诸如redis之类的nosql中,按照用户我uid存放,一个用户同一时刻只会保留一个验证码。经过验证发现猜测正确,短信验证码会覆盖,不同交易点的操作,后面的验证码会覆盖前面的,而且验证码成功验证过之后会清空。
大胆组合大胆猜测
大葱哥大胆的将越权漏洞和验证码机制结合起来,猜测是不是存在用自己的验证码别人漏洞的可能性呢!
从越权漏洞可以看出平台的接口没有做身份验证,只要是登录用户都可以访问任意接口,那么订单确认接口也应该可以调用,只不过存在验证码验证无法通过校验。而验证码是和人相关的和订单无关,所以某一身份登录平台,那么验证订单确认接口时也应该使用当前用户的验证码。
经过测试发现确实存在该漏洞,无需卖家确认,就可以完成订单,空手拿简书贝。这是和第一个漏洞一样严重的高危漏洞,只要我坏一点,就可以不花一分钱拿走平台的所有卖单。
当然第一时间将漏洞告诉了官方,目前官方回复已经修复了。
网友评论