- 金銭的利益: 不正なアカウントを作成して、虚偽の請求を行うこと (たとえば、不正な保険金請求だけを目的にオンライン保険アカウントにサインアップする場合など) や、新規顧客向けの特典やインセンティブを悪用することが含まれます。大量のアカウント作成は、SMSポンピング攻撃を仕掛ける際の第一段階でもあります。
- アカウントの経年化: 攻撃者は大量のアカウントを作成し、時間をかけて古いアカウントに見せることで、将来のより高度な攻撃に備えて正当なものらしく見せかけることがあります。
- サービス妨害: 大量のサインアップ試行は、組織のシステムに過負荷をかけ、グローバルなレート制限を超過させることで、サービス拒否につながる可能性があり、正当なユーザーによるサービスへのアクセスを妨げます。
- ユーザー名列挙 (T1087) : 攻撃者は、特定のユーザー名がシステム内にすでに存在するかどうかを見極めるために、短時間のうちに多数のサインアップを試みることがあります。攻撃者はこの情報を、クレデンシャルスタッフィングやフィッシングのような標的型攻撃に利用できます。
サインアップ攻撃を検出する
fs、ss、signup_pwd_leak などのログイベントタイプがあります。偵察段階では、テナントのサインアップエンドポイントを標的にした HTTP POST リクエストが繰り返し観測されることがあります。こうした動きは、多くの場合、脆弱性を探ったり、自動化されたサインアッププロセスの有効性を試したりする攻撃者の初期的な試みを示しています。
高度な分析を行う場合や、Auth0 外のアプリケーションとログインアクティビティを関連付ける場合は、ログストリーミング を有効にしてください。
緩和戦略
- 不審な IP スロットリング: 不審な IP アドレスに対して厳しめのサインアップしきい値を設定し、単一の送信元から大量のサインアップ試行が行われるのを防ぎます。
- ボット検出: Auth0 のボット検出を有効にし、Bot Detection レベルを High に設定することで、自動化されたサインアップ試行を特定してブロックする強力な仕組みを導入します。
- 厳格な CAPTCHA 要件: 利便性はやや下がるものの、より強力に対処したい場合は、サインアップ時に常に CAPTCHA を表示するよう設定します。正当なユーザーに多少の手間は生じますが、ボットの活動を妨げることができます。
- パスワードレス認証: パスワードレス認証方法を使用します。これにより、攻撃者はサインアップ時に使用される主識別子 (たとえばメールアドレスや電話番号) への継続的なアクセスを維持する必要が生じ、多数の不正アカウントを作成して管理することが難しくなります。
- 強化された認証要素: WebAuthn を認証要素として使用することで、フィッシング耐性を高め、SMS ポンピング詐欺のような攻撃者の狙いを完全に阻止できます。
- テナントアクセス制御リスト (ACL) : 悪意のあるトラフィックをブロックするために、テナント ACL を設定します。
- Pre-user Registration トリガー: Pre-user Registration トリガーを使用して、本人確認の対策を適用します。たとえば、アカウント有効化前にメールアドレスの確認を必須にするといった簡単な手順から、リスクプロファイルに応じたより高度な確認プロセスまで含めることができます。
- サインアップ時に確認を必須にする: サインアップ時のメール確認 を設定し、ユーザーがサインイン前にメールアドレスを確認することを必須にします。可能であれば、ワンタイムパスワード (OTP) を使用するのが理想的です。
- Web アプリケーションファイアウォール (WAF) ルール: リバースプロキシ配下のカスタムドメイン を使用している場合は、既知の悪意ある IP 範囲をブロックし、不審なリクエストパターンを検出し、Signup endpoint を標的とする一般的な攻撃ベクトルを軽減できるように WAF ルールを設定します。
- サインアップを無効化する (最終手段) : 深刻または継続的な攻撃が発生している場合や、ユーザー自身による登録が必須でないアプリケーションでは、最終手段として新規ユーザーのサインアップを一時的または恒久的に無効化できます。
- 不正アカウントを削除またはブロックする: 不正アカウントを特定した後は、Auth0 の を使用して、不正アカウントを削除またはブロックできます。一括操作を行う場合は、Management API の rate limits に注意し、rate limit を超えるおそれがある場合は サポートに連絡 してください。