0%

73WEB攻防-支付逻辑

思维导图

41WEB攻防

知识点:

  • 94、支付逻辑-商品本身-修改-数量&价格&属性等
  • 95、支付逻辑-营销折扣-优惠券&积分&签约&试用等
  • 96、支付逻辑-订单接口-替换&并发&状态值&越权支付等

章节点:

Web层面:Web2.0 & Web3.0
语言安全:JS,ASP,PHP,NET,Java,Python等(包含框架类)
OWTOP10:注入,文件安全,XSS,RCE,XXE,CSRF,SSRF,反序列化,未授权访问等
业务逻辑:水平垂直越权,支付签约&购买充值,找回机制,数据并发,验证码&弱口令等
特殊漏洞:JWT,CRLF,CORS,重定向,JSONP回调,域名接管,DDOS,接口枚举等
关键技术:POP链构造,JS逆向调试,NET反编译,JAVA反编译,代码解密,数据解密等
Web3.0:未待完续筹备中….

支付逻辑常见测试:

  • 1、熟悉常见支付流程
    选择商品和数量-选择支付及配送方式-生成订单编号-订单支付选择-完成支付
  • 2、熟悉那些数据篡改
    商品ID,购买价格,购买数量,订单属性,折扣属性,支付方式,支付状态等
  • 3、熟悉那些修改方式
    替换支付,重复支付,最小额支付,负数支付,溢出支付,优惠券支付等
  • 4、熟悉那些另类方法
    无限试用,越权支付,并发兑换,四舍五入半价购,循环利用优惠券,支付签约逻辑等

支付逻辑如何挖掘:

  • 1、找到关键的数据包
    可能一个支付操作有三四个数据包,我们要对数据包进行挑选。
  • 2、分析数据包
    支付数据包中会包含很多的敏感信息(账号,金额,余额,优惠等)
    要尝试对数据包中的各个参数进行分析。
  • 3、不按套路出牌
    多去想想开发者没有想到的地方,如算法拼接,关闭开启返优惠券等
  • 4、PC端尝试过,APP端也看看,小程序也试试

支付逻辑安全修复:

1、在后端检查订单的每一个值,包括支付状态;
2、校验价格、数量参数,比如产品数量只能为整数,并限制最大购买数量 ;
3、与第三方支付平台检查,实际支付的金额是否与订单金额一致;
4、如给用户退款,要使用原路、原订单退回。如:退押金,按用户原支付订单原路退回;
5、加密、解密、数字签名及验证,这个可以有效避免数据修改,重放攻击中的各种问题;
6、金额超过指定值,进行人工审核等。

欢迎关注我的其它发布渠道

-------------本文结束感谢您的阅读-------------