ホームページ >運用・保守 >安全性 >Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

PHPz
PHPz転載
2023-05-12 10:04:111971ブラウズ

皆さん、こんにちは。以下に共有する記事は、Tumblr のユーザー登録プロセス中に、Tumblr の「人間とマシンの認証」メカニズム (reCAPTCHA) に欠陥があり、簡単に認証できることを発見した著者によって作成されました。バイパスされました。このバイパスによって引き起こされるセキュリティ リスクは、悪意のある攻撃者が大量の偽のソーシャル アカウントを作成し、そのアカウントのユーザー名と電子メールを列挙する可能性があることです。これにより、間接的に Tumblr Web サイト アプリケーションの異常なトラフィックが発生し、さらにはユーザー情報の漏洩につながる可能性があります。

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

脆弱性公開テストに関する私の理解と経験の共有

昨年 6 月 16 日にロンドンで HackerOne が開催されました。ハッカソン大会では、脆弱性の発見に対して支払われた報奨金は 8 万米ドルを超えました。脆弱性公開テストは確かに将来有望な業界です.公開テスト プラットフォームの場合、報奨金付きの組織的なテスト活動は、セキュリティ研究者が脆弱性を発見する動機となるだけでなく、報告された脆弱性の品質を向上させ、詳細な脆弱性情報を提供することもできます。メーカーに連絡して早急に修理してもらいます。

セキュリティは複雑なテーマであり、大企業であっても間違いを犯すことは避けられません。企業は多くの場合、内部リソースと外部攻撃者との間で不確実なセキュリティ リスクに直面しますが、脆弱性の公開テストによって既存のセキュリティ ギャップを補うことができます。組織内で高品質で多様なセキュリティ テスターをトレーニングまたは選択できない場合は、外部の公開テスト プロジェクトまたはコンサルティング サービスを利用して、セキュリティ製品または関連システムをテストし、脆弱性を発見できます。

個人的に、私も公開テストのプロセス中にいくつかのひどい経験に遭遇しました。私はかつて、あらゆるアカウントへのアクセスを許可する高リスクの脆弱性を Myspace に報告しましたが、Myspace との長期にわたる交渉中、彼らは全く無関心であったため、最終的に私はこの脆弱性を公開することにしました (ここをクリックして読んでください)。この脆弱性は、約 3 億 6,000 万のユーザー アカウントに影響を与えます。公的圧力を利用して脆弱性の修正を促すことができることを願っています。この動作は強制でもあります。

逆に、Tumblr 社の reCaptcha 認証コードバイパスの脆弱性を発見したことがありますが、Twitter で報告したところ、直接メッセージで連絡をいただき、脆弱性を発見するまでに 2 日かかりました。以下は、脆弱性発見プロセスについて私が共有したものです。

Tumblr の reCaptcha 検証コード バイパスの脆弱性

ユーザー登録のために www.tumblr.com にアクセスしたとき、そこに埋め込まれている Google reCAPTCHA 検証コード サービスに設定ミスの脆弱性があることがわかりました。クライアントおよびアプリケーションによって送信される reCAPTCHA 検証コード リクエストでは、「g-recaptcha-response」という名前のパラメータ値は空白のままにすることができます。この脆弱性は、新しく登録されたすべてのユーザーに影響を及ぼし、悪用するには特別なツールは必要ありません。Web サイトに表示されるボタンを手動でクリックするか、パケット キャプチャ エージェントを通じて変更を開始するだけで済みます。

脆弱性の影響

一般に、キャプチャ メカニズムが適切に実行および展開されている場合、レート制限効果 (レート制限) があり、スパム ユーザーが偽のソーシャル メッセージを作成するのを防ぐために使用できます。アカウントを削除し、特定のアプリケーションのリクエスト量を削減します。私が発見した Tumblr ページの reCAPTCHA 認証コード バイパスの脆弱性は、攻撃者が偽のアカウントを作成するために使用することができます。また、Tumblr のユーザー登録メカニズムでは、登録された電子メール アドレスをユーザー名に関連付けることのみが許可されているため、この脆弱性を利用して標的にすることもできます。メールアドレスやユーザー名に対するブルートフォース列挙攻撃 大規模な列挙を繰り返すと、Tumblrのユーザー登録情報が漏洩する可能性があります。

脆弱性の再発

まず、www.tumblr.com ページでの通常のアカウント作成プロセスを見てみましょう。まず、ログイン ページ https://www.tumblr.com/login に移動します。右上隅にある登録ボタン「サインアップ」をクリックします:

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

#その後、アカウント登録ページ https://www.tumblr.com/register にジャンプします:

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

次に、スタート ボタン「始める」をクリックすると、ユーザー名、パスワード、電子メール アドレスなどの必要なオプションが表示されます:

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

上記の必須フィールドを入力した後、年齢を入力し、利用規約を確認する必要もあります:

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

次に、「人間-マシン認証」(reCAPTCHA) がポップアップ表示されます)page:

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

ここで展開されている「人間とマシンの認証」(reCAPTCHA) オプションに加えて、その下に「Almost Done!」オプションもあります。面白いのは、一般的には次のステップに進む前に「人間と機械の認証」を完了する必要があるのですが、私のテストでは「人間と機械の認証」の「私はロボットではありません」を無視できることがわかりました。下の「Almost Done!」をクリックすると、いわゆる「人間とマシンの認証」が完了し、ユーザーの Tumblr ホームページへの次のステップに直接進みます。ここでの「人間とコンピュータの認証」(reCAPTCHA) の導入は単なる見せかけなのでしょうか?

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

パケット キャプチャ分析

詳細な分析のために、Burp を使用してユーザーの「人間とマシンの認証」を調べます ( reCAPTCHA) ステップ 特定のリクエストと応答を開始します。

「人間とマシンの認証」を開始するときの POST リクエストは次のとおりです。

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

上記の POST リクエストをよく見ると、次のことがわかります。 recaptcha チャレンジは、「g-recaptcha-response」のパラメータ値は、上の図の赤い部分です。ただし、このパラメータ値を空白のままにすると、チェックを入れなかったことと同じになります。この方法で構築された POST リクエストは次のとおりです。

Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

テストの結果、Tumblr サーバーは上記の 2 つの POST リクエストに対して同じ有効な応答を返したことがわかりました。

##もちろん、つまり、Tumblr サーバーが単に「g-recaptcha-response」パラメータの値をチェックするのを忘れたため、前述の「人間とマシンの認証」が発生しました。 reCAPTCHA) メカニズムがバイパスされます。 Tumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法

多くの Web サイト アプリケーションはユーザー ベースからの高度な信頼を必要としますが、このような認証バイパスの脆弱性はこれらの Web サイトでもよく見られます。いいえ、少し前に Google が reCAPTCHA を完全にバイパスする脆弱性を修正したばかりです。

以上がTumblrのユーザー登録プロセス中にreCAPTCHA検証を分析してバイパスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。