2019-11-18

必测的支付漏洞(一)使用fiddler篡改支付金额

版权声明:本文为CSDN博主「茵茵大可爱」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/github_36032947/article/details/70236977

自己总结步骤:

点击到跳转支付页面,然后在命令行输入bpu+  网址(ip)-在webForms修改数据后,返回到支付页面,再次点击,进入微信支付,支付成功

--------------

  互联网产品中常会遇到支付功能,测试人员测试这部分功能时一定要重视,因为如果这部分出现了较严重的bug,将会给公司带来不小的经济损失!如果你测出了问题领导也一定会高兴的!因此测试优先级很高,但具有一定难度,刚接触测试的小白们可能不知道支付功能有哪些测试点,作为同为小白的我,就与大家分享一下我学习并致用于工作中的成果吧!

        今天这篇介绍一下支付功能的测试点之一——篡改支付金额。设想,购买一样商品,在提交订单后、跳转到支付界面前,篡改了支付金额或数量,如把2000元商品修改为0.1元,若是实体商品可能还有追回损失的机会,若是虚拟产品如游戏币,那可能就追不回来了!我使用的是抓包工具fiddler4修改支付金额的,fiddler能把网页拦截,修改服务器返回参数,并把修改后的数据包发送给服务器。下面我以测试web app电子书支付为例,介绍一下具体的操作流程!

一、拦截订单网页

1)在下方命令行输入命令:bpu +网址域名

2)web app端点击提交订单,出现图中红色标识,网页已拦截

二、修改订单价格

1)选中拦截的链接,右侧菜单选择Inspectors—WebForms

2)修改参数totalPrice,这里的8.8是电子书价格,此处修改为0.02

3)点击Run to Completion,发送修改后参数

三、跳转到付款页面


点击继续支付,跳转到支付宝界面,如图,已修改为0.02元,成功篡改支付金额!因此,发现了一个重大Bug,可以提交给开发了!

总结:

由此可见,将发送包中的金额修改,是一个十分危险的操作,从经济利益角度来讲,中间的差价会为公司带来巨大的损失!

修改方案可以让开发不要在数据包中加入价格和数量等敏感值。

二:设置断点

一、设置断点

1)选择fiddler菜单中Rules->Automatic Breakpoints->Before Requests,设置断点,也可以使用快捷键F11;

2)如果底部显示一个红色标识,证明设置断点成功了


二、修改数据,发送数据包

设置断点后,会自动拦截所有网页,对于不需要修改数据包的链接,直接点击右侧绿色的Run to completion;或者直接修改数据包,修改完成后,点击Run to completion,fiddler会把拦截的网页发送到服务器,再继续拦截跳转的下一个网页

三、取消断点

进行完修改数据包等操作后,可取消断点,让fiddler继续抓包,选择菜单Rules->Automatic Breakpoints->Disabled,或按快捷键shift+F11

四、发送最后一个拦截的数据包

取消断点前,会拦截最后一个数据包,此时再次点击run to completion,fiddler不再拦截网页,继续抓包

————————————————

版权声明:本文为CSDN博主「茵茵大可爱」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/github_36032947/article/details/70312642

你可能感兴趣的:(2019-11-18)