高端網(wǎng)站制作網(wǎng)站設(shè)計/百度安裝到桌面
知識點:
1、支付邏輯-商品本身-修改-數(shù)量&價格&屬性等
2、支付邏輯-營銷折扣-優(yōu)惠券&積分&簽約&試用等
3、支付邏輯-訂單接口-替換&并發(fā)&狀態(tài)值&越權(quán)支付等
支付邏輯常見測試:
熟悉常見支付流程:選擇商品和數(shù)量-選擇支付及配送方式-生成訂單編號-訂單支付選擇-完成支付
熟悉那些數(shù)據(jù)篡改:商品ID,購買價格,購買數(shù)量,訂單屬性,折扣屬性,支付方式,支付狀態(tài)等
熟悉那些修改方式:替換支付,重復(fù)支付,最小額支付,負數(shù)支付,溢出支付,優(yōu)惠券支付等
熟悉那些另類方法:無限試用,越權(quán)支付,并發(fā)兌換,四舍五入半價購,循環(huán)利用優(yōu)惠券,支付簽約邏輯等
支付邏輯挖掘:
找到關(guān)鍵的數(shù)據(jù)包:可能一個支付操作有三四個數(shù)據(jù)包,我們要對數(shù)據(jù)包進行挑選。
分析數(shù)據(jù)包:支付數(shù)據(jù)包中會包含很多的敏感信息(賬號,金額,余額,優(yōu)惠等)
要嘗試對數(shù)據(jù)包中的各個參數(shù)進行分析。
不按套路出牌:多去想想開發(fā)者沒有想到的地方,如算法拼接,關(guān)閉開啟返優(yōu)惠券等
PC端嘗試過,APP端也看看,小程序也試試
支付邏輯安全修復(fù):
在后端檢查訂單的每一個值,包括支付狀態(tài);
校驗價格、數(shù)量參數(shù),比如產(chǎn)品數(shù)量只能為整數(shù),并限制最大購買數(shù)量 ;
與第三方支付平臺檢查,實際支付的金額是否與訂單金額一致;
如給用戶退款,要使用原路、原訂單退回。如:退押金,按用戶原支付訂單原路退回;
加密、解密、數(shù)字簽名及驗證,這個可以有效避免數(shù)據(jù)修改,重放攻擊中的各種問題;
金額超過指定值,進行人工審核等。
購買支付-修改數(shù)量&篡改價格&訂單對沖
修改數(shù)量
篡改價格
產(chǎn)品替換對沖
購買支付-優(yōu)惠券復(fù)用盜用&積分對沖溢出
正常每個賬戶只能領(lǐng)取一次
優(yōu)惠卷復(fù)用
分別使用優(yōu)惠卷購買商品及不使用優(yōu)惠卷購買商品并抓取兩個不同請求訂單
數(shù)據(jù)包
goods_sku_list=1%3A1&leavemessage=&use_coupon=0&integral=0&account_balance=0&pay_type=0&buyer_invoice=&pick_up_id=0&express_company_id=1
goods_sku_list=1%3A1&leavemessage=&use_coupon=1&integral=0&account_balance=0&pay_type=0&buyer_invoice=&pick_up_id=0&express_company_id=1
優(yōu)惠卷盜用
此時第四次購買商品,并修改數(shù)據(jù)包把use_coupon=0改為use_coupon=6