Shikata Ga Nai

Private? There is no such things.

Improper Authorization could allow access to more than 100,000 Microsoft Dynamics 365 for Partner Usersを訳してみた

Hello there, ('ω')ノ

 

不適切な認証により、100,000 を超える

Microsoft Dynamics 365 for Partner User へのアクセスが許可される可能性があるを。

 

脆弱性:

 IDOR

 

記事:

 https://mearegtu.medium.com/broken-access-control-cc6cfd793b15

 

序章:

Microsoft が調整した脆弱性開示の一環として、

攻撃者がMicrosoft Dynamics for 365 パートナー Web サイトのユーザの

個人識別情報 (名、姓、電子メール アドレス、MPN ID など) にアクセスできる

可能性があるダイナミクス ポータル内の重大な脆弱性を。

 

技術的な詳細:

ステップ 0x01:

有効なパートナー アカウントを使用して、

「Dynamics 365 for Partners」ポータルにログインして。

 

https://dynamicspartners.xxxxx.microsoft.com/

 

ステップ 0x02:

上記のアプリケーションは、バックグラウンドで

さまざまな API 呼び出しを呼び出し。

現在ログインしているユーザの詳細を取得して。

次の興味深い API 呼び出しを詳しく分析すると。

 

リクエスト

エンドポイント:/api/Users/email?emailId=maotg@???.onmicrosoft.com
ホスト:landapi-prod.azurewebsites.net
権限:Bearer eyJ....

 

emailId」パラメータはデフォルトで、

現在ログインしているユーザの電子メール アドレスを受け取って。

 

 

レスポンス

アプリケーションは、現在ログインしているユーザの姓名、電子メール アドレス、

MPNID、AAD プロファイル ID、ロール名などを返して。

 

ステップ 0x03:

[脆弱性/予期しない動作] ここでの 1 つの重要なテスト ケースは、

電子メール アドレスを使用して Dynamics ポータル システムの詳細上の

他のユーザにアクセスしようとしていて。

 

以下は、他の利用者のメールアドレスを利用したシステム情報の不正な閲覧で。

アプリケーションは、

API 呼び出しで追加の承認を確認せずにユーザの詳細を公開して。

この例では、2 番目のテスト アカウントの電子メール アドレスを使用して。

 

リクエスト

エンドポイント:/api/Users/email?emailId=moxxx@???.onmicrosoft.com
ホスト:landapi-prod.azurewebsites.net
権限:Bearer eyJ....

 

 

レスポンス

アプリケーションは、他のアプリケーション ユーザの姓名、電子メール アドレス、

MPNID、AAD プロファイル ID、ロール名などを許可なく公開して。

ただし、この脆弱性を悪用するには、攻撃者はダイナミクス ポータルの

他のサイト ユーザの電子メール アドレスを事前に知っている必要があって。

 

ステップ 0x04:

次の方法は、二次承認なしですべてのユーザ データ (~112MB) を開示して。

このテスト ケースでは、/api/Users/email?emailId=<email address> の代わりに、

API を直接呼び出して /api/Users を直接実行して。

 

リクエスト

エンドポイント:/api/Users
ホスト:landapi-prod.azurewebsites.net
権限:Bearer eyJ....

 

 

レスポンス

112 メガバイトの Web サイト ユーザの詳細

おそらく、100,000 ユーザを超える可能性があって。

 

Best regards, (^^ゞ