愿浪飒精神伴你左右,网络安全之路任重而道远。

支付漏洞

Web渗透学习笔记 langsa 3年前 (2022-01-13) 653次浏览 0个评论

支付原理

商家收到支付结果的两种方式

  • 通过浏览器进行跳转:用户在未跳转到支付结果页面关闭,商户无法收到支付结果,且浏览器的数据很容易被篡改。
  • 服务器端的异步通知:支付公司后台服务器向用户制定的异步通知URL发送参数。商户对支付结果惊醒签名认证,验证正常后则对订单进行处理。

常见支付漏洞

支付漏洞:支付漏洞属于逻辑漏洞,。

支付步骤:

  1. 订购
  2. 生成订单
  3. 付款

修改支付的价格:

三步中任意一步都可以进行修改测试,可以尝试修改为小金额或者负数。

eg:

修改支付状态:

利用订单的编号来判断订单的完成情况,付款时把未完成的订单号变成已完成的。

修改订单数量:

将数量由1变成0或者负数,即可白嫖。

修改附属值:

优惠券:可以修改优惠券的金额过限制的使用个数和条件。

越权支付:

利用类似id的参数来控制扣钱的账户,进行越权,用别人的钱买自己的东西。

无限制使用:

不需要过多的身份验证即可完成支付。

支付漏洞如何挖掘

  • 找到关键数据包(一次支付可能出现多个数据包)
  • 分析数据包(数据包中会有很多参数,挨个分析)
  • 发散思维,找开发没有想到的地方
  • 多端尝试(pc,wap,app)

防御

  • 后端检查每一项值,包括支付状态。
  • 检验价格,数量参数,比如限制数量只为正整数,并限制购买数量。
  • 与第三方支付平台检查,实际支付金额与订单是否一致。
  • 支付参数进行加密,解密,数字签名及验证。避免数据修改和重放攻击。
  • 金额超过阈值进行人工审核。

靶场作业

由于敏感信息所以请邮件联系或者关注公众号


本文标题:支付漏洞
本文链接:https://blog.langsasec.cn/index.php/2022/01/13/pay/
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
喜欢 (2)
[]
分享 (0)
langsa
关于作者:
一个网络安全从业人员
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址