Insecure Direct Object Reference (IDOR) Vulnerability on Coursera から学ぶ

ソース:

infosecwriteups.com

脆弱性:IDOR

 

訳:

この記事では、私が趣味で GCP (Google サイバーセキュリティ証明書) を勉強して取得しようとしていたときに、Coursera のプログラムで IDOR の脆弱性を偶然発見した経緯をお話したいと思い。

短い背景

それは、私が学習タブにいたときにフォーラムにコメントしようとしていたときに始まり。
コメントしようとしている間に、私のスパイの本能が 私を打ち負かし、すぐに信頼できるBurp Suiteを起動して。

リクエストをインターセプトしたところ、コメントしたりコメントに返信したりするたびに、エンドポイント APIPUT コメントを挿入しようとするときに メソッドを使用していることに気付き。
その時すでに心の中では、「 削除してみたらどうなるだろう?」と考えていて。

変更しようとしている識別子を見つけようとしましたが、しばらく考えているうちに、大きな頭が回転する瞬間が得られ。
そこのスレッドにコメントして ID を取得したらどうなるでしょうか?

 

それで私はそれを行い、Burpでリクエストをキャプチャし、 courseForumQuestionID パラメータでターゲットIDを正常に取得して。

それがターゲット ID であることをどのようにして知ったのかという質問は、質問 (ターゲットのコメント) と回答 (私の返信) である「フォーラムタイプのフォーム」で非常に自明で。

 

 

メソッドで置き換えました。
DELETE の代わりに ターゲットIDの取得に成功した後、リピーター上の元のIDをPUT

 

 

サーバーに送信した後、残念ながら 500 Internal Server Errorが表示されました。

 

 

もう終わったと思った、この時までにもう終わったと思った。
当時の私の考えは「無駄な機会だった、本当に手に入れたと思った」だったのですが、2 回目にクリックした後、ステータス コードが突然 500 Internal Server Error から204 No Content 変わり。

 

 

この時点では、ステータス コードが 5xx から 2xx に変わっていたので、本当に驚き。
それは、ペネトレーションテスターの観点からは何か良いことが起こったことを意味するかもしれず。

ページを更新した後、脆弱性が機能したためではなく、少し 過剰に 機能したことに驚き。
先ほど取得したターゲット ID と思われるコメントを 1 つだけ削除するのではなく、 そのフォーラム内のすべて のコメントを削除して。

 

数回更新した後でも、すべてのコメントが削除されました (誰かが新しいコメントを挿入しない限り、新しいコメントがポップアップ表示されます)

脆弱性を確認した後、すぐにHackerOneにBug Bounty Programがあるかどうか調べましたが、残念ながらありませんでした。
当時は、ハッカーインセンティブとしての収益化を認めない脆弱性開示プログラム (VDP) しかありませんでしたが、その時はそもそもお金が欲しかったわけではなく、報告してすぐに修正したかっただけです。 

 

ほなほな。