identity & security

クレデンシャルスタッフィングとは? クレデンシャルスタッフィング攻撃を防ぐ方法

認証情報の侵害は、ビジネスや顧客にとっての脅威です。このブログでは、リスクの軽減方法を解説します。

Aug 12, 20241 min read

クレデンシャルスタッフィングは、サイバー犯罪者が特定の組織から窃取したユーザー名とパスワード(侵害により取得したもの、またはダークウェブから購入したもの)を使用して、別の組織のユーザーアカウントにアクセスするサイバー攻撃です。

複数の(場合によってはすべての)アカウントで同じパスワードを使いまわしている人が多数存在することから、クレデンシャルスタッフィング攻撃はデータ漏洩の原因として特に多くなっています。実際に、Auth0 by Oktaのプラットフォームだけでも、毎日のログイン要求の半分近くがクレデンシャルスタッフィングの試みとなっています。

侵害によってより多くの認証情報が漏洩する中、サイバー犯罪者がクレデンシャルスタッフィングを使用する機会が拡大しています。現在、ダークウェブで流通している侵害された認証情報は、文字通り何十億件にも上ります。

しかし、適切なサイバーセキュリティ対策を導入すれば、クレデンシャルスタッフィング攻撃を防止できます。このブログでは経営幹部がクレデンシャルスタッフィング攻撃について知っておくべきことや、自社が被害に遭う可能性を低減する、被害を未然に防ぐための方策を紹介します。

その他のリソース:

クレデンシャルスタッフィングの仕組み

クレデンシャルスタッフィング攻撃を実行するために、サイバー犯罪者は、窃取されたユーザー名とパスワードのペアを含むリストをボットネットに追加し、これらの認証情報を使用したログインを一度に複数のサイトで試みるプロセスを自動化します。大規模なボットネットによる攻撃は、企業のITインフラストラクチャを圧倒する可能性があり、攻撃中にWebサイトが通常の180倍ものトラフィックを受けることがあります。

Anatomy Credential Stuffing

一連の認証情報が機能するサイトを見つけたサイバー犯罪者は、ユーザーのアカウントや個人データに自由にアクセスし悪意ある行動をとります。

  • 侵害したアカウントへのアクセスを販売: この事象は、メディアストリーミングサービスで特に多く見られます。Disney+Netflix、Spotifyはいずれも、ハッカーがユーザーアカウントへのアクセスをサブスクリプション料金よりも安く販売する攻撃の被害者となっています。
  • Eコマース詐欺: ハッカーは、小売サイトで正規ユーザーになりすまし、自分用または転売目的で高額な商品を注文できます。この行為は一般的な(そして犯罪者にとっては儲かる可能性のある)個人情報の窃取であり、Akamaiの調査によると、小売業界はクレデンシャルスタッフィングに最も脆弱な業種となっています。
  • 企業/組織のスパイ活動と窃取: 上記の犯罪は企業とその顧客に深刻な影響を及ぼしますが、この第三の形態の攻撃は、企業にとって最も壊滅的な打撃となる可能性があります。従業員や管理者のアカウントの乗っ取りに成功した場合、攻撃者はクレジットカード番号、社会保障番号、住所、ログイン認証情報などのあらゆる機密の個人情報を収集し、その情報を最高入札者に販売します。

クレデンシャルスタッフィング攻撃のコスト

クレデンシャルスタッフィング攻撃の成功率は高くありませんが(通常は1〜3%)、組織への影響は決して小さくありません。

たとえば、Ponemon Instituteの「Cost of Credential Stuffing(クレデンシャルスタッフィングのコスト)」レポートによると、企業はアプリケーションのダウンタイム、顧客の喪失、ITコストの増加という形で、クレデンシャルスタッフィングによって年間平均600万ドルの損失を出しています。

規制当局や一般市民も、クレデンシャルスタッフィング攻撃への対策で企業の責任を追及し、厳しい罰金を科すようになっています。企業は、このような攻撃を防ぐための適切なセキュリティ対策を導入しなかった場合や侵害を公にしなかった場合、あるいはパスワードの保護を十分に実行しなかった場合に、GDPRなどのデータプライバシー法に基づく法的措置の対象となる可能性があります。

たとえば、2018年、英国の情報コミッショナーオフィス(ICO)は、英国内の顧客約270万人分のデータを流出させた「一連の回避可能なデータセキュリティの不備」を理由として、Uberに38万5,000ポンドの罰金を科しました。

また、2021年、フランスのデータ保護局(CNIL)は、「データ管理者のWebサイトに対するクレデンシャルスタッフィング攻撃から顧客の個人データを保護するための適切なセキュリティ対策を実施しなかった」ために、データ管理者とそのデータ処理者に22万5,000ユーロの罰金を科しました。

クレデンシャルスタッフィング攻撃とブルートフォース攻撃

クレデンシャルスタッフィングは、ブルートフォース攻撃の一種とみなされます。しかし、実際には両者は大きく異なり、システムを保護する最善の方法も異なります。

ブルートフォース攻撃は、文字や数字の組み合わせを変えてパスワードを推測しようと試みます(多くの場合、所定のパターンや一般的に使用される基本のパスワードフレーズを使用)。この攻撃を防ぐために、ブルートフォース攻撃対策としてログイン試行の失敗回数を制限したり、CAPTCHAを使用したり、ユーザーに強力なパスワードの使用を要求したりできます。

一方、クレデンシャルスタッフィング攻撃では、強力なパスワードであっても既知であるため、サイバー犯罪者によるアカウントアクセスを防ぐことはできません。CAPTCHAやブルートフォース対策を導入している場合でも、ユーザーは予測可能なパターンでパスワードを変更することが多く、サイバー犯罪者は侵害されたパスワードを繰り返し利用できるため、ユーザーを保護する能力は限られています。

クレデンシャルスタッフィング攻撃を防ぐには

パスワードの使いまわしについて安全でないことを認識しつつ、複数のサイトで同じパスワードを使用するユーザーが多いのは、覚える必要のあるパスワードが約100個もあるためです。パスワード管理ツールを利用するというオプションもありますが、低い採用率にとどまっています。そのため、クレデンシャルスタッフィング攻撃を防ぐためには、組織側がパスワードを完全に排除するなどの対策を講じて、サイバー犯罪者が盗んだ認証情報を使用してユーザーのアカウントへアクセスできないようにする必要があります。ここからはOWASPのCredential Stuffing Prevention Cheat Sheetに基づいていくつかの有効な方法を示します。

認証情報のハッシュ化

認証情報のハッシュ化は、ユーザーの認証情報を窃取から保護するための最初のステップです。ハッシュ化は、ユーザーのパスワードをデータベースへ保存する前にスクランブル化し、万が一パスワードが盗まれた場合でも、ハッカーがパスワードを(少なくとも理論的には)使用できないようにします。

実際には、すべてのパスワードハッシュが解読不可能であるわけではありません。KoreLogicのペネトレーションテスターのRick Redman氏は、次のように説明しています。「ハッシュの強みは保険のようなもので、データ侵害後にユーザーが被害を受ける前にパスワードを変更できる時間がどれくらい残されているかを示しています。SHA1だけの場合、パスワード変更が可能な時間ほぼありません。bcryptの場合、すべてのパスワードを変更して被害を免れるだけの時間があります」

このように、ユーザーパスワードをハッシュ化してもクレデンシャルスタッフィング攻撃を防ぐことはできませんが、サイバー犯罪者が盗んだパスワードを使用した悪意ある行為を制限できます。

漏洩したパスワードへの防御

漏洩したパスワードの利用を防止するには、ユーザーがログインに使用するパスワードを侵害された認証情報のデータベース(haveibeenpwnedなど)に照合して、クレデンシャルスタッフィングをリアルタイムで防止します。

たとえばAuth0 by OktaのBreached Password Detection機能は、ユーザーの認証情報がセキュリティ侵害で公開された疑いがある場合やログイン試行が疑わしいIPアドレスから行われた場合に、ユーザーへの通知、ログインブロック、追加の認証要素(MFA)の要求を実施するように構成できます。

ボットの検出

前述のように、攻撃者はボットを使用してクレデンシャルスタッフィング攻撃を実行します。Auth0 by OktaのBot Detection機能は、認証を試みているボットを高い成功率で識別できます。クレデンシャルスタッフィング攻撃からの保護を提供し、正規ユーザーにはほとんど摩擦を与えません。ボット攻撃が検知されると、ログインエクスペリエンスでCAPTCHAのステップが表示され、ボットやスクリプトによるトラフィックが排除されます。

異常検出

何が起こっているかを監視することは、早期に介入して攻撃を阻止するための優れたアプローチです。トラフィックを可視化できれば、攻撃を受けていることを把握し、攻撃を軽減するための措置を講じることができます。Auth0 by Oktaでは、Log Stream機能を使用して、ほぼリアルタイムでトラフィックを監視できます。Log Streamを作成して構成すると、選択した監視サービスにイベントが取り込まれるようになります。監視サービスにおいてAttack Protection Log Eventを分析し、異常検知ダッシュボードを構築できます。

多要素認証 (MFA)

多要素認証 (MFA)は、ユーザー名とパスワードの組み合わせに加えて、別の形式の認証を使用してログインする必要があるため、クレデンシャルスタッフィングを防ぐための非常に効果的な方法です。たとえば、指紋などの生体認証、ユーザーに関連付けられたデバイスへ送信されるワンタイムコード、安全なアカウントに送信されたメールなどには、サイバー犯罪者はアクセスできません。

MFAは、カスタマーエクスペリエンスへの影響が懸念されるために導入が遅れていますが、MFAの洗練度とカスタマイズ性の向上によって普及が促進されています。たとえば、2020年2月、GoogleはNestスマートホームのユーザーに二要素認証の使用を義務付けると発表しました。

継続認証

継続認証システムは、生体認証や行動パターンなどの要素を使用して、パスワードの代わりにユーザーのアイデンティティをリアルタイムで(アプリケーションの使用中に)確認します。その結果、クレデンシャルスタッフィング攻撃をはじめとする多くのサイバー攻撃は、サイバー犯罪者がユーザーのアカウントに不正にアクセスするための有効な方法ではなくなりました。

パスワードレス認証

パスワードレス認証は、パスワード(ユーザーが知っているもの)ではなく、ユーザーが持っているもの(デバイスや別のアカウント)や、ユーザー自身の属性(生体認証)でユーザーを確認するため、クレデンシャルスタッフィングを防止できます。また、パスワードレスは、ユーザーのログインエクスペリエンスを向上させ、組織がパスワードリセットに対応するための時間と費用を節約します。

ビジネスとユーザーの双方にメリットのあるパスワードレス認証

パスワードレス認証はクレデンシャルスタッフィング攻撃を排除するだけでなく、企業とユーザーの双方にとって従来のユーザー名とパスワードによる認証よりも全体として安全かつユーザーフレンドリーで、費用対効果の高いソリューションであることが、多くの調査やレポートに示されています。

FIDO AllianceのエグゼクティブディレクターであるAndrew Shikiar氏は、世界経済フォーラムとの共同レポートで、「認証の主要手段としてパスワードに依存することは、もはやコンシューマーが求めるセキュリティやユーザーエクスペリエンスを提供しない」と説明しています。世界経済フォーラムのプロジェクトリーダーであるAdrien Ogee氏も、「認証プラクティスの改善は、可能であるだけでなく、必須事項となっている」と付け加えています。

Auth0 by Oktaでは、生体認証やソーシャルログインなどを使用した、安全でユーザーフレンドリーなパスワードレス認証を簡単に実装できます。従来のユーザー名とパスワードによる認証に伴うリスクを排除するため、Auth0 by Oktaのパスワードレス認証プラットフォームを使用する方法については、こちらをご覧ください。

このブログはこちらの英語ブログからの翻訳、池原 大然によるレビューです。