一、快捷支付原理
1,原理
~浏览器跳转
简单说,你付钱了,浏览器通知服务器,服务器更新你的金额
//基本依托前端跳转,不可靠,现在应该极其少见
~服务器端异步通知
简单说,你付钱,发一个通知给服务器,
同时,你支付的平台也会向服务器发送一个通知。
服务器对比一下你的通知与支付平台通知,
一致则更新你的金额。不一致,一般都会等待客服处理
//相对安全
2,补充
~支付漏洞并不需要代码审计,其实更适合新手
~支付漏洞属于逻辑漏洞,挖掘这类漏洞要有发散(奇葩)思维
简单说,不按常理出牌,效果往往事半功倍
3,注意:支付漏洞具有极高的法律危险,渗透测试要极为注意分寸
建议:几元钱,几毛钱差额的测试
二、常见支付漏洞
1,直接修改订单金额
在订购、订单、付款的任意一步,抓包,修改金额。
一般推荐在最后一步修改,因为每一步都可能有验证机制,少一事更好。
至于金额数,可以是小数目或者尝试负数
2,画棒棒糖的钱买电脑
预购电脑,最后一步(付款前),抓包,查看到有一个xxid=100
//假设xxid=100是电脑的id,即这个100就代表电脑
预购糖,最后一步(付款前),抓包,查看糖的xxid=20
返回第一个数据包,将xxid=100改为20
点击付款,金额发生变化
3,修改买的数量,0元买东西
假设:键盘100,鼠标50
购买订单,抓包,修改数量:键盘×1,鼠标×-2,
结算,0元
4,修改附属值(比如优惠劵、积分等等)
~直接修改优惠劵的金额
~修改优惠劵数量
注意:商家搞活动的时候,最容易出问题
5,越权漏洞(用别人的钱买自己的东西)
抓包,看到有代表身份类得传参,如userid=xx等等,
尝试改为别人的userid,试试能不能让别人给我们买帐
6,无限制试用
比如使用的参数为2,正常购买的参数为1
我们不断的传参数2会发生什么呢
7,总结:抓包,看到有数字类得东西就去改一改,说不定有奇效
三、支付漏洞如何挖掘
1,找到关键的数据包
可能一个支付操作有三四个数据包,我们要对数据包进行挑选。
//最差也最有效的就是排除法
2,分析数据包
支付数据包中会包含很多的敏感信息(账号,金额,余额,优惠),
要尝试对数据包中的各个参数进行分析。
3,不按套路出牌
多去想想开发者没有想到的地方
4,pc端尝试过,wap端也看看,app也试试。
//app如何抓包,建议百度或谷歌。回答应该很详细
支付漏洞常见问题汇总
1.什么是支付漏洞?
支付漏洞属于逻辑漏洞的一种,是和支付的业务有关,支付业务中出现的逻辑漏洞全部属于支付漏洞。
2.支付漏洞危害大吗?
支付业务一般和资金挂钩,如果支付宝存在支付漏洞,我可以不断的刷钱,你觉得危害如何?
3.支付漏洞常见吗?
支付漏洞还是比较常见的,特别是一些小商城、小网站、非法网站容易出现一些支付漏洞
4.支付漏洞测试需要负法律责任吗?
支付漏洞测试用较小的金额,一般控制在10块内,金额不要过大,而且测试成功后火速提交,不要留着。
5.快捷支付的原理?
快捷支付实际上就是跳转到支付页面,然后你付钱,然后商家获取到支付结果(早期由依赖浏览器跳转的支付、后面多为异步传输(付钱成功后,支付商和商家有自己的联系通道,不依靠客户浏览器跳转))
6.支付漏洞需要代码审计吗?
不需要,而且一般而言你也没有目标源码,无法进行审计
7.支付漏洞挖掘的核心思想是什么?
不仅仅是支付漏洞,在逻辑漏洞中,要有发散性思维,多想一些别人一般不会想到的操作,比如支付漏洞,买几个商品,然后在数量那里有负数,然后将最终价格变为0
8.常见支付漏洞:
修改支付价格、修改支付状态、修改订单数量、修改优惠价优惠价格和使用限制、越权支付、无限试用
9.修改支付价格具体操作?
修改支付价格,主要是通过抓包,比如你买一个电脑,标价6999,然后你发现数据包里面有6999的传参,然后我改成了6.999,然后跳转到支付页面,我付了6.999将这个电脑买下,也可以把金额改为负数
10.修改支付状态具体操作?
比如你购买一个1000的商品,然后又购买一个10块的商品,两个订单号不同,然后你抓包,将1000块支付发送的数据包的订单号改为10块,然后付了10块钱,发现商品买到手了
11.修改订单数量具体操作?
订单数量的操作一般都是负数,买一个贵的,几个便宜的商品,然后贵的商品的价格为-1,于是乎这个贵的商品的价格就是个负数,比如-8999,然后我再买几个商品,加起来也是8999,那么计算总金额的时候就是 -8999+8999 == 0 ,于是乎0元购买了
12.修改优惠卷优惠价格和使用限制具体操作?
这里出发点,不在于商品本身了,核心在于优惠卷,比如优惠卷价格修改,比如使用N张优惠卷
13.越权支付具体操作?
越权支付,修改支付金额的用户id号,扣其他用户的钱
14.支付漏洞仅仅在WEB端有吗?
那里都有,不仅仅WEB,有支付的方面都可能有,这个要开阔思维,我上次出去吃个烧烤,扫码点单顺手一个XSS
15.如果传参加密了怎么办?
看到第一件事是别慌,加密不代表杜绝漏洞了,先看看能不能找到加密方式,然后买不同价格东西,买同价格的东西,去比对数据包
16.如何防御支付漏洞?
后端检测一切传参、金额大的话人工审核、传参中不涉及金额、加密传参
17.越权支付漏洞怎么预防?
做好权限控制呗
18.靶场支付漏洞怎么做?
修改支付价格和修改支付数量都行
19.支付漏洞和其他逻辑漏洞的核心是什么?
控制参数
20.有没有一些神奇案例?
以前艺龙似乎出现一个支付漏洞,只需要信用卡账号有信用卡有效期就可以直接消费。
21.如何提升自己在支付漏洞方面的挖掘?
他山之石,可以攻玉。
(http://woo.zone.ci/searchbug.php?q=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E)