SAML authentication bypass leads to account takeover から学ぶ

ソース:

medium.com

脆弱性:SSO

 

訳:

サインアップ プロセス中に、シングル サインオン SAML を 使用していることに気づき、さらに調査するようになりました。

 

learn.microsoft.com

ステップ 1 : アカウントを作成してログイン

 

 

ここで、324435 は私のユーザー名です。

ステップ 2 : Burpsuite でリクエストをインターセプトします。

 

 

ここで SAML レスポンスがあることがわかります。
Burp 拡張機能SAML Raider Cert」を追加していることを確認して、SAML Raider をクリックします。

ステップ 3: これは、大規模なアプリケーションでの ID チェックを容易にするために使用される XML ベースのマークアップ言語です。
これで、それを読めるようになったはずです。

 

 

ユーザー名 324435 を覚えていますか?

345530 でもう 1 人のユーザーを作成し、インターセプトされたリクエストで置き換えます

ステップ 4: SAML は通常、データの整合性を確保するために署名 (場合によっては暗号化) を使用します。
署名ベースのセキュリティは必ずしも適切に実装されているわけではありません。

 

署名は存在する場合にのみ検証されます

非常に苦労した結果、SAML 応答から署名値を削除してみるとよいことがわかりました。
場合によっては、これがセキュリティ チェックをバイパスするために必要な唯一のアクションです。
これを行うには 2 つの方法があります。
署名フィールドを空にするか、フィールドを完全に削除します。

そこで、base-64 署名を削除しました。

 

 

ステップ 5: リクエストを転送して追加します…

 

 

ほなほな。