FB OAuth Misconfiguration Leads to Takeover any Account から学ぶ

ソース:

sl4x0.medium.com

脆弱性:OAuth

 

訳:

問題のターゲットは、 あるREDACTED.com コース、書籍、および関連サービスの提供に重点を置いたプラットフォームで。
登録プロセス中に、ユーザーには 2 つのオプションが表示され。
電子メールとパスワードを使用してサインアップするか、Google または Facebook介した OAuth 認証を選択するかのいずれかで。

早速、評価を始めてみましょう!

 

まず「Facebook でログイン」をクリックして、何が起こるかを見てみて。

 

 

方法論は次の手順でわかるようになります。

  • どのアプリでも Facebook でログインします。
  • 「アクセス権の編集」をクリックします。
  • メールアドレスのチェックボックスをオフにします。
  • 「続行」をクリックします。

しかし、これを適用すると、Web サイトがメール アドレスを単語として保持するアカウントにリダイレクトされることがわかりました。 undefined:


 

 

この珍しいシナリオの理由は、ユーザーが Facebook でのログインを確認した後、Web サイトが電子メール パラメーター値を「未定義」として返すためです。
その結果、Web サイトが電子メール アドレスをクエリすると、それをこの単語として解釈し、対応するアドレスへのアクセスを許可します。アカウント。

さて、アカウント乗っ取りがどこに関係するのか疑問に思うかもしれません。
さまざまな Facebook アカウントでこのバグを試みたにもかかわらず、結果は一貫していて。
毎回、Web サイトは明確な理由もなく私を被害者のアカウントにリダイレクトします。

インパクトの高まり

一歩下がって、「確認」のクリックからアカウントへのアクセスに至るまで、Web サイトに送信されるすべてのリクエストを確認してみましょう。

以下のリクエスト 私の友人、 @ashbdelrazik が 以下のリクエストを発見しました。

 

 

彼は単に変更しただけです email からのパラメータ値 undefined この Web サイトに登録されている任意の電子メール アドレス (たとえば、私の電子メール) に送信すると、驚くべきことに、彼は私からのやり取りをまったく行わずに私のアカウントに侵入したのです。

これで、何も操作せずにウェブサイト全体のアカウントを乗っ取ることができます。

 

ほなほな。