當前位置:
首頁 > 新聞 > 「薅羊毛」漏洞分析 | 我是如何到處「混吃混喝」的

「薅羊毛」漏洞分析 | 我是如何到處「混吃混喝」的

*本文原創作者:小石,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載


不多嗶嗶 先看圖 無圖無真相 (??????)??。





下面就跟大家分享交流一下經驗,漏洞均已上報給相應的廠商,無法透露詳細細節,見諒。


一、某餐飲店的儲蓄卡 卡里有800元可到任意分店進行消費


該儲蓄卡分4種面值 60、200(180元購)、400(350元購)、800(650元購)。


因為沒有購物車功能直接進行購買,負數漏洞是無法利用的了。

那麼就分析一下購買的數據包,看看是否進行了價格、優惠等價格的傳遞。


saleAmt儲蓄卡的單價 totalQty購買數量 totalAmt總價。



嘗試修改了單價以及總價無果 對價格做了檢測。


最後發現修改cardType的值 其餘參數不動 貌似能以低價購買高價的卡。


選擇購買60元的卡 → 提交訂單 → 攔截數據包修改cardType的值為800的 → 付款60 → 拿到800元的卡。


此漏洞產生的原因


該程序員還是有安全意識的,對傳遞的價格參數做了檢測。


但經過fuzz以及漏洞利用成功之後發現他僅僅將傳遞的價格與資料庫中的價格進行比對,如果存在則放行,不存在則阻止。

以60元的舉例:傳遞saleAmt:60 → 查詢資料庫中價格列是否含有60?通過並提示付款:阻止。


**二、某個廠商的活動 參與即可領取XXX電子券


**


開始我還以為只是個活動噱頭,沒那麼容易拿到電子券的。


但我控制不住自己的好奇心啊,打開了burpsuite設置好了代理。


進入活動進行參與,沒想到真的直接跳轉到了領取電子券的頁面,良心啊!


我將成功領取電子券的包抓了下來,放到Repeater進行分析,一個get包,大致如下:

GET /?a=0001&b=fHost: 127.0.0.1XXX: XXXX...

我將包原封不動的重放,響應200但是沒有回顯,成功領取的那個數據包回顯了電子券的過期日期的。


a參數一看就知道代表是電子券的類型 b參數看不出是什麼,別的地方也沒啥好改的,就隨便改個值看看吧。


沒想到一改這b參數的值就回顯了電子券的過期日期,我都驚呆了w(?Д?)w。

打開我的獎勵,確認多了一張電子卷,也查看了卷碼,跟剛領的不同。


只要b參數的值之前沒有提交過,就可以成功領取一張,光數字組合起來的就拿到手軟好嘛..


此漏洞產生的原因


不詳..我也不知道為啥會這樣,還請大佬多指教。


三、想必大家非常熟悉了,基本隨處可見的烤魚店


經過一天刻苦的學(shen)習(you)後,大佬們帶我去了烤魚,到了店裡我就跟大佬們說。


「有沒有可能找到漏洞免費吃啊?」 大佬無情回復」怎麼可能,哪會有漏洞。」


當時手上也沒電腦,美滋滋的吃完就溜了。

過了兩天閑來無事,就去看了看他的自助點餐系統,發現存在負數漏洞 開始還很激動。


但是需要到店跟店員確認的,所以並沒什麼用,但緊接著又發現他的一個商城,有賣一些菜品的卡卷。


進入商城頁面一個購物車的圖標就吸引了我,直接嘗試負數漏洞,構造出最低價,付款,最後我僅用4元就買到了一張烤魚的卷!


此漏洞產生的原因


沒有對商品的數量進行校驗是否正常導致結算出問題,例如A商品單價10元,B商品單價9元。


系統進行結算的公式: 單價數量 + 單價數量 = 總價


假如我添加了1個A、-1個B到購物車,


總價 = 110 + (-1)9 = 10 - 9 = 1 元。


感謝觀看,小小雜技,獻醜了,各位大佬請多多指教(。_。)


*本文原創作者:小石,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

看片要當心了!色站不只掏空你,還可能掏空你的電腦
開源軟體安全現狀分析報告
黑帽SEO剖析之隱身篇
Discuz! 任意文件刪除漏洞重現及分析
來自後方世界的隱匿威脅:後門與持久代理(一)

TAG:FreeBuf |