也買酒購物車邏輯設計缺陷,商品數量可為負,導致總金額任意篡改漏洞。
詳細說明:
購物車總金額=商品1×數量+商品2×數量
這里雖然前臺限制了數量,但是可以通過篡改post的數據包,繞過前臺限制,具體過程:
這里的商品數量可以篡改為負數,這樣在購物車中添加一件商品后,在添加數量為負的商品就可以篡改總金額啦。
先添加一件299單價的商品:
這里再添加個單價88,數量篡改為-3件:
數量POST數據參數:
最后確定,選擇貨到付款,訂單成功:
下單成功:
這里發現部分高價酒在后臺有個最小額度限制,如果總訂單金額低于成本價就會有提示:低于成本價~~額 有心的童鞋可以用這個方法推算出后臺設置的高價酒的最低成本價~~
修復方案:
限制商品數量為正整數 且增加后臺校驗