【web安全】支付篡改

前言

菜某的总结,如有错误和补充欢迎评论指正。

内容仅供学习使用,切勿用于非法用途。

支付篡改的存在位置与影响

首先他的危害不言而喻,几乎任何一个拿出来都能给企业带来巨大的损失。

他出现的地方也是十分的广泛,从某种意义来说,只要支付的功能越丰富,支付的种类越繁多,出现漏洞的几率都会越大。什么优惠卷,先到后付,现付,支付宝付款,微信付款,绑定卡号呀,活动抵消多少钱呀什么的,这种支付的功能全都可能产生支付的安全问题。

虽然主流的支付平台等的支付是相对安全的,但是如果用语法搜索一下,很多公司都会搭建自己的小网站去售货,这些网站的支付就非常的脆弱了,很容易出现一些漏洞。

支付篡改的挖掘

这种漏洞一般去看数据包就可以实现,一般传送数据包的话就会出现一些参数可以进行修改,修改几下看看付款页面是否出现变化就可以。

可进行篡改的支付内容

首先要提一句,有可能在数据包中是找不到一些参数的,比如某些固定的参数,如价格呀什么的,可能不会出现在数据包中,他们可能直接就在数据库中了,还有可能是用编号代替的,主要是连续二到三次选择数量,和商品种类,去辨别一下数据包的变化,有条件同一个商品点两下辨别一些类似于token或者验证码的随机生成的参数的干扰。

修改商品价格

这个是最常见的,但是我们买物品是有很多步骤的,我们可以在任意的位置进行数据包的修改,比如我们可以在选择商品环节进行价格篡改,也可以在最后的支付环节进行支付篡改。总之就是看他哪里没有验证就篡改哪里。

修改支付数量

数据包中也可能会有支付数量的数据包,一般是在选则商品之后,在支付之前。就是那个共计多少元的位置。建议抓两个不同数量的数据包对比一下,根据数据包去判断哪个参数是关于支付数量的,支付数量一般是都会发送数据包,因为这个是不确定的,但是他可能会检测数据库的存活,不要搞得太花。

值得注意的是

这个地方有时候可以尝试把数量改为负数,有的是可以白嫖的。

修改订单ID

商品都有一个订单号,有时候先弄一个比较贵的商品,然后再写一个比较便宜些商品,把便宜商品的数据包改为贵的商品的数据包就可以实现用便宜商品的价格买贵的商品

修改商品号

跟修改订单ID同理,可以用别的价钱进行购买。

修改支付状态

我们有一定概率能够抓到支付状态的数据包,支付状态是用来判断支付是否成功的。我们可以把类似的0改为1,这类似的操作实现支付成功。

修改支付方式

他经常会有一些第三方的接口,例如微信支付,支付宝支付。

这个有点类似于ssrf,我们可以修改支付接口,让他指向我们自己的支付接口,从而实现自己给自己打钱。

其他支付功能的修改

有些支付功能比较多,类似于积分,优惠卷,打折等功能,都会存在被修改的风险。

1.优惠价格修改

2.修改积分

使用方法都是类似用抓包的方式去查看

越权支付

通俗理解:我让别人给我付钱

当然有些支付功能有找人付这种功能也有可能找到安全问题。

有时候数据包中会有一个user这类的参数,那就可以修改来实现别人付款。

(因为有些是第三方付款,有些网站是有自己的钱包的,这类的就不太会扫码支付,就容易实现这样的安全问题)

修改试用期

1.一种情况,他的试用3天日期接口为2,7天接口为3,购买接口为1.那么有时候改掉接口就会变成永久使用了

2.可能他直接就是发的明文参数,直接改个99999无限使用

多线程的问题

用于那种提现的环节。

通俗理解,就是提现的次数比实际的能体现的次数多。

比如我有100元,一次10元能提现10次,但是我快速多次发送提现能提14次,这种就是多线程问题。

案例演示

假设现在有一个网站,在售卖物品

买女友。

 

(图片仅供好玩,本靶场用不着这么多,他没商品号)

首先我们抓取购买女友的数据包

看到类似与数量和价格的参数,直接改了就行了

订单界面

完成女友便宜卖了。

值得注意的是,这是订单界面整个界面

下面还会发数据包

这个也可以改

当然这个靶场比较简单,实际有的改了不可以,需要把数量改成负数才可以,或者接口等。需要多打靶场实战练习。

(说实话,我一般不敢找这种支付的漏洞,怕出事)

  • 27
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 在进行web应用内扫码支付的测试时,主要需要验证以下几个方面的测试点。 首先,需要测试扫码支付的功能是否正常。这包括在网页上展示正确的付款二维码,用户能够通过手机扫码或其他设备实现支付的过程。测试时需要模拟用户扫码操作,并验证是否能够成功完成支付。 其次,需要验证支付过程中的安全性。测试人员需要确认支付过程中是否涉及用户隐私的泄露,如支付密码、银行账号等信息是否被正确加密和传输,以保障用户的支付安全。 接下来,需要测试支付成功后的订单处理及回调机制。测试人员需要模拟支付成功后的订单处理过程,包括生成订单、更新支付状态等,并验证支付回调接口是否正常触发以及商户系统是否能够正确处理支付回调信息。 同时,还要测试支付失败时的处理机制。测试人员需要模拟支付失败的场景,如付款账号余额不足、网络异常等,以验证系统是否能够正确处理支付失败的情况,并给予用户相应的提示信息。 最后,还需要测试支付过程中的异常情况处理。例如,用户在扫码支付过程中取消支付,或者支付过程中出现系统异常等,测试人员需要验证系统是否能够正确处理这些异常情况,并给予用户相应的处理结果。 综上所述,web应用内扫码支付的测试点主要包括功能测试、安全性测试、订单处理与回调测试、支付失败处理测试以及异常情况处理测试。通过对这些测试点的验证,可以确保web应用内扫码支付功能的稳定性和安全性。 ### 回答2: 扫码支付是一种方便快捷的支付方式,通过在web应用内进行扫码支付,用户可以直接使用自己的手机进行支付,无需携带现金或者刷卡。 在进行web应用内扫码支付测试时,有以下几个重要的测试点需要注意: 1. 扫码支付接口测试:测试接口的可用性和稳定性,确保能够正常发起支付请求,并正确处理返回结果。 2. 扫码支付流程测试:测试支付流程的顺畅性,包括扫码页面的加载速度、扫码识别的准确性、支付确认的及时性等方面。 3. 支付安全性测试:测试支付过程中的信息安全性,包括对敏感信息的加密传输、支付密码的加密存储等方面,防止用户支付信息被盗取或者篡改。 4. 支付接口兼容性测试:测试支付接口在不同浏览器和操作系统上的兼容性,确保用户在使用不同设备时能够正常进行支付。 5. 异常处理测试:测试系统对各种异常情况的处理能力,如用户支付超时、支付失败、系统异常等,验证系统能否给出正确的提示信息和处理方式。 6. 用户体验测试:测试用户使用web应用内扫码支付的整体体验,包括支付操作的简便性、界面的友好性、支付结果的明确性等方面。 通过对以上测试点进行全面的测试,可以保证web应用内扫码支付的稳定性、安全性和用户体验。对于商家来说,能够提供方便快捷的支付方式,可以给用户带来更好的购物体验,提高用户的购买意愿和支付完成率。对于用户来说,扫码支付不仅方便,还能够保护个人隐私,避免携带大量现金或者信用卡出门。 ### 回答3: 在进行web应用内扫码支付测试时,可以针对以下几个方面进行测试点的设定。 1. 功能测试:测试扫码支付功能是否正常工作。包括扫码识别是否准确、支付金额是否正确、支付流程是否顺畅等。可以通过模拟不同的支付场景进行测试,例如测试支付成功、支付失败、支付超时等情况。 2. 兼容性测试:测试不同类型的二维码是否能够正确识别并进行支付。包括测试支持的扫码支付方式(例如支付宝、微信支付等)、二维码类型(例如支付链接、商户二维码等)和不同设备(例如移动端、PC端)的兼容性。 3. 安全性测试:测试扫码支付过程中的安全性。包括测试是否支持支付密码、是否对用户支付信息进行加密传输、是否有防止恶意攻击的机制等。 4. 性能测试:测试扫码支付的性能表现。包括测试支付的响应时间、支付的并发处理能力、支付交易量的容量等。 5. 异常情况测试:测试在扫码支付过程中出现异常情况时的处理能力。例如测试验证码错误、支付过程中断网、支付超时等异常情况下的处理能力。 6. 用户体验测试:测试用户在进行扫码支付过程中的整体体验。包括测试支付页面的界面设计是否友好、支付操作是否简单易懂、支付成功后是否及时给出提示等。 通过对这些测试点的设定和执行,可以保证web应用内扫码支付功能的稳定性、安全性和用户体验,并为用户提供良好的支付体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北岭敲键盘的荒漠猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值