Privilege Escalation via Password Reset からBACを学ぶ

ソース:

medium.com

脆弱性:Broken Access Control (BAC)

 

訳:

権限昇格とは何ですか?

特権昇格は、コンピュータ システムまたはネットワーク上で、当初許可されていたものよりも高い権限または同等の権限を取得するプロセスであり、多くの場合、脆弱性や弱点を悪用して、システムやデータの不正な制御につながる可能性があり。 これは、システムやネットワークを侵害しようとする攻撃者の共通の目的で。

 

Exploit

ペンテストアクティビティ中に、バックエンド API で userId パラメータをプレーン テキストで送信するパスワードリセット機能を発見して。
アプリケーション全体でパラメーターの値を変更して検証を確認したところ、アプリケーションが Insecure Direct Object Reference (IDOR) に対して脆弱であることがわかり。

 

パスワードのリセット要求は次のようになり。

 

 

パスワードのリセット中、アプリケーションはユーザーの現在のパスワードを検証しませんでした。
これにより、他のユーザーのアカウントにアクセスすることが非常に簡単になり。

 

古いパスワードを使用せずに userId を変更すると、200 OK 応答が返され、ユーザーに新しいパスワードでログインするよう要求され。

 

 

特権アカウントにログインしようとしたところ、そのまま管理者になってしまい…。

 

{
"userId":24,
"email":"admin@redacted.com ",
"username":"username",
"token":"admin_token”,
"
message":"User login successful!",
"
status":200
}

 

 

ほなほな。