10000美金—Facebook上的支付漏洞

iso60001  2128天前
该文原作者大概来自中国台湾地区

漏洞描述:

Facebook針對遊戲影片創作者提供了星賞計畫,創作者可依照收到的星賞數量和Facebook分潤。而此漏洞可將星賞金額修改為0.01美金,並成功贈送給創作者。

22.jpg

星賞計畫定價

觀眾可點擊聊天室的星星圖示,購買並賞星星給創作者。若有人賞星星給您,您和所有其他觀眾都可以看到賞給的星星數量,以及隨附的留言。 您可以在實況主主控板查看收到的星星數量,以及串流影片中的最新留言。創作者每獲得一顆星,Facebook 就會向他們支付 $0.01 美元。

換句話說,透過此漏洞購買6400顆星星只花費0.01美金,但Facebook會支付64美金給創作者。也就是憑空產生了63.99美金的利潤,約新台幣2000元。

回報時間軸:

2018年6月26日 (第一次報告)

2018年6月28日 (Facebook第一次回應,認為這是UI顯示的問題,並沒有安全影響)

2018年6月28日 (提供更多漏洞細節,以及其他相關漏洞案例給Facebook參考)

2018年6月28日 (Facebook第二次回應,已接受回報內容)

2018年7月4日 (Facebook第三次回應,已成功重現漏洞,並分類給對應的產品團隊調查)

2018年8月1日 (Facebook已修補漏洞,並要求複查)

2018年8月1日 (已複查)

2018年12月5日 (Facebook頒發美金10,000獎金)

詳細內容:

Supporter — Monthly

Stars

POST https://secure.facebook.com/ajax/payment/token_proxy.php?tpe=%2Fpay%2Fpayments%2F_charge%2F&dpr=1&__a=1 HTTP/1.1

xxxx=xxx

&xxxx=xxx

&.........

&amount=1.00

&currency=TWD

購買星星後送出請求

33.png

amount=43.00

44.png

修改amount=1.00

55.png

成功購買

66.png

將貨幣改為日幣,成功使用1日幣付款

77.png

成功購買的通知

88.png

成功訂閱

99.png

成為支持者

100.png

第一次回報被當作是UI上的顯示問題

110.png

提供更多參考資料後獲得獎金

這個漏洞並不困難,發現這個漏洞大約只花了不到3分鐘的時間,但連Facebook這麼大的公司都會犯這種錯誤,你能想像比Facebook小的公司們不會犯這種錯誤嗎?

後端驗證不是口號喊喊就好,更不是問題被發現之後的馬後炮,後端驗證是基本原則,但在開發過程卻沒有確實遵守,才會導致這麼多類似的問題發生。

感謝:

Facebook

◆来源:medium

◆本文版权归原作者所有,如有侵权请联系我们及时删除

最新评论

昵称
邮箱
提交评论