业务接口调用和时效绕过测试

admin 2024年12月28日13:36:56评论5 views字数 1891阅读6分18秒阅读模式

业务接口调用和时效绕过测试

业务接口调用
重放攻击

在短信、邮件调用业务或生成业务数据环节中(类:短信验证码,邮件验证码,订单生成,评论提交等),对其业务环节进行调用(重放)测试。如果业务经过调用(重放)后被多次生成有效的业务或数据结果。

a. 恶意注册

b. 短信炸弹

在测试的过程中,我们发现众多的金融交易平台仅在前端通过JS校验时间来控制短信发送按钮,但后台并未对发送做任何限制,导致可通过重放包的方式大量发送恶意短信。

案例: 某交易网逻辑漏洞(木桶原理)

看到首页有某密码重置的问题了,就来挖一挖了http://www.xxx.com/首先注册用户,手机号,发送验证码,是6位数字,不截图了这里,发送手机号1分钟能发一次,服务端有限制。


然后手机版http://m.xxx.com/
可以无限进行发送短信,造成短信轰炸,手机验证码还是6位数字

GET /user/send_msg?mobile=13800xxxxx HTTP/1.1

Host: m.ymt360.com

response  {"status":1,"msg":16595}


到这里漏洞审核肯定说无危害啊,因为没有一个短信轰炸被通过的。
然后我们来到了手机APP客户端,以安卓的为例吧
首先也是短信轰炸,这个不多说了
然后就是,短信验证码为4位数字,这个爆破起来是分分钟啊

业务接口调用和时效绕过测试

然后这个可能也没什么,其实想说的是一个设计缺陷

POST /v8/phone/verify?mac=cATa3T986UgODE7YgoSZ9h4yJoI. HTTP/1.1

X-App-Version: V3.3.2

X-User-Agent: 0

X-User-Id: 93873

X-DOMAIN: app

Content-Type: application/json

Accept-Encoding: gzip,deflate,sdch

Content-Length: 57

Host: api.ymt360.com

{"seqNo":"16768","vcode":"1111","code":"aifbc6c0eo5sgzi"}

上面就是验证验证码的的请求1111可以直接爆破。
然后验证失败response返回{"status":-1}
现在我们直接不进行爆破,截获返回包,修改为{"status":0}
则直接验证通过进入账户页面。

业务接口调用和时效绕过测试

然后更重要的一点就是,可以知道其他用户的手机号,直接登录任意用户账号。

内容编辑

a. 类似案例如下

点击“获取短信验证码”,并抓取数据包内容,如下图。通过分析数据包,可以发现参数sendData/insrotxt的内容有客户端控制,可以修改为攻击者想要发送的内容

业务接口调用和时效绕过测试

将内容修改“恭喜你获得由xx银行所提供的iphone6一部,请登录http://www.xxx.com领取,验证码为236694”并发送该数据包,手机可收到修改后的短信内容,如下图:

业务接口调用和时效绕过测试

时效绕过测试

大多有利用的案例发生在验证码以及业务数据的时效范围上,在之前的总结也有人将12306的作为典型,故,单独分类。

时间刷新缺陷

a. 某网站的买票业务是每隔5s,票会刷新一次。但是这个时间确实在本地设置的间隔。于是,在控制台就可以将这个时间的关联变量重新设置成1s或者更小,这样刷新的时间就会大幅度缩短(主要更改autoSearchTime本地参数)

案例:某网站自动刷票时间可更改漏洞

某网站的自动查询可以直接修改查询间隔时间,可使查询间隔时间无限小。

业务接口调用和时效绕过测试

我们都知道,某网站的订票现在可以开启“自动查询”,这时会5秒查一次,如果同时选了“自动提交”,那么如果查到票就会自动提交订单。好像挺方便的。
查询间隔是5秒。估计是为了服务器考虑吧。

业务接口调用和时效绕过测试

但如果修改autoSearchTime参数,查询间隔就随便改啦。
打开console,输入想使用的自动查询间隔(毫秒)
比如:

业务接口调用和时效绕过测试

然后再按原操作进行自动查询:

业务接口调用和时效绕过测试

我想多久查一次多久查一次,并且的确是可以按照这个时间提交订单的,yeah。
这样一来,码农们刷票和提交定单就可以比大家快5秒啦
如果全国人民都用0.01秒的间隔,
那么某网站的服务器,嘿嘿

时间范围测试

a. 针对某些带有时间限制的业务,修改其时间限制范围。

例如在某项时间限制范围内查询的业务,修改含有时间明文字段的请求并提交,查看能否绕过时间限制完成业务流程。

例如通过更改查询手机网厅的受理记录的month范围,可以突破默认只能查询六个月的记录。

关注路劲科技,关注网络安全!
业务接口调用和时效绕过测试
失效的身份认证和会话管理
CVE-2020-0796检测与修复
我最近偶遇的六个很酷的Python库
招募令| 别看别看,一篇“三无”招聘文章,请慎重点击

业务接口调用和时效绕过测试

原文始发于微信公众号(LSCteam):业务接口调用和时效绕过测试

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月28日13:36:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   业务接口调用和时效绕过测试https://cn-sec.com/archives/702695.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息