ユーザー名列挙
ユーザー名列挙 とは何ですか?
ユーザー名列挙ユーザー名そのものが存在するかどうかをアプリのレスポンスから判定する、アカウント列挙の一形態。
ユーザー名列挙は、メールアドレスや電話番号ではなく、ユーザー名(ハンドル名)を対象としたアカウント列挙です。ログイン画面で「ユーザーが存在しません」と「パスワードが違います」を出し分けるケース、ハンドルの存在を示すパスワードリセット、未知のユーザーには 404、パスワード不一致には 401 を返す API、登録時に使用済みハンドルを通知するフォームなどが典型例です。有効なユーザー名一覧を得た攻撃者は、低頻度・低速度のパスワードスプレー、的を絞ったソーシャルエンジニアリング、サービスをまたぐアイデンティティの突き合わせなどを行えます。対策には、統一されたエラー文言、汎用的なリセット文言、レート制限、悪用検知時の CAPTCHA、MFA による被害低減があります。
● 例
- 01
ログイン API が未知のユーザーには HTTP 404、有効ユーザーかつパスワード不一致には HTTP 401 を返す。
- 02
リセットフォームが有効なハンドルには「メールを確認してください」、それ以外には「該当ユーザーがいません」と返す。
● よくある質問
ユーザー名列挙 とは何ですか?
ユーザー名そのものが存在するかどうかをアプリのレスポンスから判定する、アカウント列挙の一形態。 サイバーセキュリティの ID とアクセス カテゴリに属します。
ユーザー名列挙 とはどういう意味ですか?
ユーザー名そのものが存在するかどうかをアプリのレスポンスから判定する、アカウント列挙の一形態。
ユーザー名列挙 はどのように機能しますか?
ユーザー名列挙は、メールアドレスや電話番号ではなく、ユーザー名(ハンドル名)を対象としたアカウント列挙です。ログイン画面で「ユーザーが存在しません」と「パスワードが違います」を出し分けるケース、ハンドルの存在を示すパスワードリセット、未知のユーザーには 404、パスワード不一致には 401 を返す API、登録時に使用済みハンドルを通知するフォームなどが典型例です。有効なユーザー名一覧を得た攻撃者は、低頻度・低速度のパスワードスプレー、的を絞ったソーシャルエンジニアリング、サービスをまたぐアイデンティティの突き合わせなどを行えます。対策には、統一されたエラー文言、汎用的なリセット文言、レート制限、悪用検知時の CAPTCHA、MFA による被害低減があります。
ユーザー名列挙 からどのように防御しますか?
ユーザー名列挙 に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
ユーザー名列挙 の別名は何ですか?
一般的な別名: ユーザー列挙, ログイン列挙。
● 関連用語
- identity-access№ 008
アカウント列挙
対象システムに存在するアカウントやメールアドレス、電話番号を、アプリのレスポンスの差から特定する攻撃。
- attacks№ 800
パスワードスプレー攻撃
少数のよく使われるパスワードを多数のアカウントに対して低頻度で試し、ロックアウトやレート制限を回避する攻撃。
- attacks№ 232
クレデンシャルスタッフィング
ある漏えいから得たユーザー名・パスワードの組合せを他サービスで自動再生し、パスワード使い回しを悪用してアカウントを乗っ取る攻撃。
- attacks№ 821
フィッシング
信頼できる組織になりすまし、被害者から認証情報を取得したり送金させたり、マルウェアを実行させたりするソーシャルエンジニアリング攻撃。
- network-security№ 904
レート制限
レート制限は、識別子(IP、ユーザー、API キー、トークンなど)あたりの単位時間内のリクエスト数を制限する仕組みで、API やアプリを濫用・スクレイピング・総当たり攻撃から守ります。