Shikata Ga Nai

Private? There is no such things.

How i was able to get 29 free products. | Bug Bountyを訳してみた

Hello there, ('ω')ノ

 

29個の無料製品を入手できた方法を。

 

脆弱性:

 レースコンディション(競合状態)

 

記事:

 https://infosecwriteups.com/how-i-was-able-to-get-29-free-products-bug-bounty-845667ab4ad4

 

レースコンディション(競合状態)とは、2 つ以上のスレッドが。

共有データにアクセスでき、同時にそのデータを変更しようとすると発生して。

理論的なことを理解するのに苦労している場合は、例を挙げると。

ユーザが銀行口座 A と B を持っているとすると。

A と B の両方に 500 ドルの金額があり。

下記は、https://www.baeldung.comのイメージで。

 

 

ご覧のとおり、A から B に 2 回、300 ドルを送金して、問題はなく。

ただし、これら 2 つの転送が同時に実行されると、問題が発生する可能性があって。

下記は、https://www.baeldung.comのイメージで。

 

 

競合状態に遭遇し、A から B に 600 ドルを送金すると。

銀行口座 A は最初に 300 ドルを受け取って。

 

ということで、対象企業はドリンクのマーケットプレイスで。

月々のサブスクリプションがあって。

サービスに加入すると、毎月無料サンプルがもらて。

製品はプロフィールに表示され、バスケットに追加でき。

クリックしてバスケットを追加し、何ができるかを確認するために。

リクエストをキャプチャして。

下記が、依頼の一例で。

 

 

そのため、ID を確認してすぐに IDOR を試しましたが、IDOR はなく。

それで数量を変更しようと思って。

つまり、これはサンプルで無料なので、数量は 10 ~ 15 で、価格は 0 のままで。

数量を 3 に変更してリクエストを送信しましたが、これも拒否されて。

.そこで、競合状態を試してみない理由を説明し。

リクエストを Turbo Intruder に送信し、200 をすべて見て応答を調べたところ。

競合状態があることがわかって。

競合状態のバグは簡単に悪用でき、非常に影響力があって。

 

Best regards, (^^ゞ