Overview
クレデンシャルスタッフィング(Credential Stuffing)とは、過去のデータ漏洩で流出したユーザー名とパスワードの組み合わせ(認証情報)を使い、他のWebサービスやアプリケーションに対して自動的にログイン試行を行うサイバー攻撃手法です。パスワードの使い回しという人間の習慣を悪用する点が最大の特徴です。
攻撃者はボット(自動化ツール)を使用して、漏洩した数百万〜数十億件の認証情報を高速に試行します。あるサービスから漏洩したパスワードを別のサービスでも使い回しているユーザーが多いため、一定割合でログインが成功します。成功率は一般的に0.1〜2%程度とされていますが、大規模なリストを使えば膨大な数の有効なアカウントを乗っ取ることが可能です。
ブルートフォース攻撃がランダムなパスワードを総当たりで試すのに対し、クレデンシャルスタッフィングは実際に使用されていた正規の認証情報を使用するため、検知が困難であり、成功率も格段に高いという特徴があります。近年のデータ漏洩の増加に伴い、この攻撃は急速に深刻化しています。
Details
ブルートフォース攻撃との違い
ブルートフォース攻撃はランダムなパスワードの組み合わせを総当たりで試す手法であり、1つのアカウントに対して大量のパスワードを試行します。一方、クレデンシャルスタッフィングは漏洩済みの「正規の認証情報ペア」を使用し、多数のアカウントに対して少数の試行を行います。そのため、アカウントロックアウトやレートリミットによる検知を回避しやすいという特徴があります。
攻撃ツールとインフラ
- Sentry MBA:最も広く利用されるクレデンシャルスタッフィングツールの一つ。Webサイトごとの設定ファイル(Config)を読み込み、ログインフォームに自動的に認証情報を入力する
- OpenBullet:オープンソースの自動化ツールで、高度なカスタマイズが可能。CAPTCHA回避モジュールやプロキシローテーション機能を備える
- STORM / SentryMBA / SNIPR:特定のサービス向けに最適化されたツール群。アンダーグラウンドフォーラムで設定ファイルとともに配布される
Combo Lists(コンボリスト)
クレデンシャルスタッフィングの燃料となるのがCombo Listsです。これは過去のデータ漏洩で流出したメールアドレスとパスワードのペアをまとめたリストで、ダークウェブやアンダーグラウンドフォーラムで売買されています。大規模なコンボリストには数十億件の認証情報が含まれており、「Collection #1」と呼ばれるリストには約7億7,300万件のメールアドレスと2,100万件以上のパスワードが含まれていました。
プロキシローテーション
攻撃者は単一のIPアドレスからの大量リクエストがブロックされることを避けるため、プロキシローテーションを使用します。数千〜数十万のIPアドレスを使い分けることで、各IPからのリクエスト数を少なく保ち、レートリミットや IPベースのブロッキングを回避します。住宅用プロキシ(Residential Proxy)の利用により、正規ユーザーのトラフィックとの区別がさらに困難になっています。
CAPTCHA回避技術
CAPTCHAはボットによる自動ログインを防ぐための一般的な対策ですが、攻撃者は様々な方法でこれを回避します。CAPTCHA解決サービス(2Captcha、Anti-Captchaなど)は、低賃金の人間ワーカーがリアルタイムでCAPTCHAを解く仕組みです。また、機械学習ベースの自動解決ツールや、ブラウザの自動操作によるCAPTCHAバイパス技術も存在します。
パスワードリスト攻撃との関係
パスワードリスト攻撃はクレデンシャルスタッフィングと類似した概念ですが、より広義の用語です。パスワードリスト攻撃は辞書攻撃(よく使われるパスワードのリスト)を含む場合がありますが、クレデンシャルスタッフィングは特に漏洩した実際の認証情報ペアを使用する点が明確な特徴です。
Security Measures
- 01多要素認証(MFA)の導入:パスワードが漏洩しても、追加の認証要素がなければログインできないようにします。TOTP認証アプリやFIDO2セキュリティキーを全ユーザーに義務化することで、クレデンシャルスタッフィングの成功を根本的に防止できます。
- 02漏洩パスワードのチェック:Have I Been Pwnedなどのサービスと連携し、ユーザーが設定しようとするパスワードが過去のデータ漏洩に含まれていないか確認してください。NIST SP 800-63Bでも漏洩パスワードの拒否が推奨されています。
- 03ボット検知・WAFの導入:ログインエンドポイントに対する異常なトラフィックパターンを検知するWebアプリケーションファイアウォール(WAF)やボット管理ソリューションを導入してください。デバイスフィンガープリンティングや行動分析により、自動化されたログイン試行を識別できます。
- 04レートリミットとアカウントロックアウト:同一IPまたは同一アカウントに対するログイン試行回数を制限してください。ただし、プロキシローテーションを使う攻撃には単純なIPベースの制限では不十分なため、複合的な閾値設定が必要です。
- 05パスワードの使い回し防止の啓発:ユーザーに対してパスワードマネージャーの利用を推奨し、サービスごとに一意で強力なパスワードを使用するよう教育してください。組織内ではパスワードマネージャーの導入を標準化しましょう。
- 06リスクベース認証の実装:通常とは異なるデバイス、ロケーション、時間帯からのログイン試行に対して、追加の認証ステップを要求してください。ユーザーの行動パターンを学習し、異常なアクセスをリアルタイムで検知・ブロックする仕組みを構築しましょう。
Incidents
📋 Disney+ ローンチ直後の大規模アカウント乗っ取り(2019年)
2019年11月、Disney+のサービスローンチからわずか数時間後、大量のユーザーアカウントが乗っ取られ、ダークウェブ上で1アカウントあたり3〜11ドルで販売される事態が発生しました。攻撃者はクレデンシャルスタッフィングを使用し、他のサービスで漏洩した認証情報をDisney+のログインに試行しました。
被害を受けたユーザーの多くは、他のサービスと同じパスワードを使い回していたことが原因です。Disney+はローンチ時にMFAを実装しておらず、この事件はパスワード使い回しの危険性と、新規サービスにおけるMFA実装の重要性を浮き彫りにしました。
📋 Zoom アカウント50万件以上の流出(2020年)
2020年4月、新型コロナウイルスの影響でZoomの利用が急増する中、50万件以上のZoomアカウント認証情報がダークウェブ上で1アカウントあたり1セント以下で販売されていることが発見されました。攻撃者はクレデンシャルスタッフィングにより、過去のデータ漏洩で流出した認証情報を使ってZoomアカウントへのログインを試行しました。
有効な認証情報は「有効アカウントリスト」としてまとめられ、ダークウェブ上のフォーラムで流通しました。リストにはメールアドレス、パスワード、ミーティングURL、HostKeyなどが含まれていました。この事件はリモートワーク時代におけるアカウントセキュリティの重要性を広く認識させました。
📋 任天堂 ニンテンドーネットワークID 16万件不正アクセス(2020年)
2020年4月、任天堂は約16万件のニンテンドーネットワークID(NNID)が不正アクセスを受けたことを公表しました。攻撃者はクレデンシャルスタッフィングの手法を用いて、他のサービスから漏洩した認証情報でNNIDへのログインを試み、一部のアカウントではニンテンドーeショップでの不正購入被害が発生しました。
任天堂はNNIDを通じたニンテンドーアカウントへのログイン機能を廃止し、影響を受けたアカウントのパスワードをリセットしました。さらに、全ユーザーに対して二段階認証の有効化を強く推奨し、不正購入に対しては返金対応を行いました。