为了感谢感谢大家的支持,决定在写完“金融项目渗透测试指南”前,时不时分享一些案例给大家,希望能对大家有用。
测试一个金融项目,发现一个挺有趣的漏洞。该业务流程是发起流程会创建一个业务id,业务的增删改查都是通过该id进行。
第三个请求是流程终结请求,会将用户信息提交给服务器端进行审核
当我尝试在查询接口越权查询,发现存在鉴权;然后尝试在第三个请求接口尝试越权,发现也会鉴权。我就想着是不是因为a账户发起了第三个请求导致b用户尝试越权失败。
所以我在a发送第一个请求,刚生成id的时候,就用b越权提交a的id参数的业务流程发现成功提交。所以只要在其他用户刚创建id但是还没有发送第三个请求的时候,你能爆破到他刚创建的id,就能伪造他提交数据,为了证明危害,我建了一个python脚本在服务端不停请求第三个接口(按照id格式生成随机数),终于给我爆破到了一个,此时他的账号应该看到的是我伪造提交的信息。
原文始发于微信公众号(安全边角料):金融业“时序竞争”越权漏洞
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
点赞
https://cn-sec.com/archives/3847658.html
复制链接
复制链接
-
左青龙
- 微信扫一扫
-
-
右白虎
- 微信扫一扫
-
评论