Hello there, ('ω')ノ
招待リンクで興味深い発見を。
脆弱性:
ロジックの欠陥
記事:
https://medium.com/@sathvika03/interesting-find-on-the-invite-link-17cf5a46d747
今回は、サブスクリプションを必要とせずに多数のアカウントを。
作成できる興味深いバグを見つけた方法について。
これは非公開のプログラムであり、redacted.com と呼ぶことに。
見つけた方法:
アプリケーションには、実際にアカウントをリクエストする必要があるアカウントに。
登録できない独自の機能があり。
名、姓、電子メール ID などの詳細を要求すると、次のような招待リンクが送信され。
リンクを開き、自分用のパスワードを設定する必要があり。
これで、アカウントを使用できるようになって。
しかし、ここで問題が発生し。
彼らが送信したリンクには、「invite」というパラメータが。
1 つしかないことに気付き。
そこで、base64 を使用して URL をデコードしようとしましたが。
驚いたことに、登録用に送信したデータはデコードされた文字列に含まれていて。
{"firstName":"Hackt3r","lastName":"M4ze","loginId":"hackt3r@m4ze.com","inviteEmailTemplate":false}
これはそれほど大きな問題ではないようで。
それから、詳細を変更してエンコードし、別のアカウントで再度使用すると。
どうなるかを考え。
試してみたところ、別のサインアップリンクを要求することなく。
x 人の代わりに別のアカウントを作成できるようになって。
通常のアプリケーションであれば、これは大きな脆弱性ではないかもしれませんが。
アプリケーションには登録ページがなく。
1 回限りのサブスクリプションで動作するため。
攻撃者は 1 つのアカウントに支払い、同じ URL で任意の数のアカウントを作成でき。
脆弱性を報告すると、それは重大な問題で。
防ぐ方法:
それを防ぐには複数の方法があって。
・Invite パラメータの代わりに特別に細工されたトークンを使用して
・招待リンクでユーザーの詳細を非表示にして
・リンクが使用されたら必ず期限切れにして
Best regards, (^^ゞ