クレデンシャルスタッフィングとは? | クレデンシャルスタッフィング対ブルートフォースアタック

クレデンシャルスタッフィング攻撃では、1つのサービスから盗んだ一連のログイン認証情報を使って、その他さまざまなサービスのアカウントのクラッキングを試みます。

Share facebook icon linkedin icon twitter icon email icon

クレデンシャルスタッフィング

学習目的

この記事を読み終えると、以下のことができます。

  • クレデンシャルスタッフィングを定義する
  • クレデンシャルスタッフィングとブルートフォースアタックを区別する
  • クレデンシャルスタッフィングの緩和の戦略を理解する

クレデンシャルスタッフィングとは?

クレデンシャルスタッフィングはサイバー攻撃であり、あるサービスのデータ漏えいから取得した資格情報が、別の無関係なサービスへのログイン試行に利用されます。

クレデンシャルスタッフィングの例

たとえば、攻撃者は大手デパートのデータ漏えいから得られたユーザー名とパスワードのリストを取得し、同じログイン資格情報を使用して銀行のサイトにログインしようとします。攻撃者は、この百貨店の顧客の一部が銀行にもアカウントを持っていて、両方のサービスに同じユーザー名とパスワードを再利用している可能性を期待しています。

2019年現在、ブラックマーケットでは漏えいした資格情報の膨大なリストが取引されていることから、クレデンシャルスタッフィングが増加しています。これらのリストの急増と、ボットを使用して従来のログイン保護を回避するクレデンシャルスタッフィングツールの進歩により、クレデンシャルスタッフィングが一般的な攻撃ベクトルになりました。

クレデンシャルスタッフィングが効果を上げる原因は?

統計的に言えば、クレデンシャルスタッフィング攻撃の成功率は非常に低いです。多くの推定では、この割合は約0.1%であり、攻撃者が狙うアカウント1,000個に対して、成功するのがおおよそ1回となります。攻撃者が取引する資格情報が膨大であることから、成功率が低いにもかかわらず、クレデンシャルスタッフィングは実施する価値があるのです。

こうして取引される資格情報には、数百万、場合によっては数十億のログイン資格情報が含まれています。攻撃者が100万セットの資格情報を持っている場合、これにより約1,000のアカウントのクラックが成功する可能性があります。クラックされたアカウントのごく一部が収益性の高いデータ(多くの場合、クレジットカード番号またはフィッシング攻撃で使用できる機密データの形式)を生成する場合、攻撃は価値があります。さらに、攻撃者はさまざまなサービスで同じ資格情報のセットを使用してプロセスを繰り返すことができます。

ボット技術の進歩により、クレデンシャルスタッフィングも実行可能な攻撃になります。多くの場合、Webアプリケーションのログインフォームに組み込まれているセキュリティ機能には、意図的な時間遅延や、ログイン試行の失敗を繰り返したユーザーのIPアドレスの禁止が含まれます。最新のクレデンシャルスタッフィングソフトウェアは、ボットを使用して、さまざまなデバイスタイプから来ていて、異なるIPアドレスから発信されているように見える複数のログイン試行を同時に実施することにより、これらの保護を回避します。悪意のあるボットの目標は、攻撃者のログイン試行を通常のログイントラフィックと区別できないようにすることであり、非常に効果的です。

多くの場合、被害を受けた企業が攻撃を受けていることに気づく唯一の兆候は、ログイン試行の全体的な量の増加です。それでも、被害を受けた企業は、正当なユーザーがサービスにログインできる状態に影響を与えることなく、これらの試みを止めることは困難です。

クレデンシャルスタッフィング攻撃が効果的である主な理由は、人々がパスワードを再利用することです。調査によると、85%とも推定される大部分のユーザーは、複数のサービスに同じログイン資格情報を再利用することが示唆されています。この慣行が続く限り、クレデンシャルスタッフィングは成果を生み続けます。

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

OWASPは、クレデンシャルスタッフィングをブルートフォース攻撃のサブセットとして分類します。しかし、厳密に言えば、クレデンシャルスタッフィングは従来のブルートフォース攻撃とは大きく異なります。ブルートフォース攻撃は、時に一般的なパスワードの提案と組み合わせながらランダムに文字を並べて、コンテキストや手がかりなくパスワードを推測しようとします。クレデンシャルスタッフィングでは、公開されたデータを使用して、可能な正解の数を劇的に減らします。

ブルートフォース攻撃に対する優れた防御は、大文字、数字、特殊文字を含む複数の文字で構成される強力なパスワードです。ただし、パスワードの強度はクレデンシャルスタッフィングからの保護にはなりません。パスワードがどれほど強力であるかは関係ありません。パスワードが異なるアカウント間で共有されている場合、クレデンシャルスタッフィングによってパスワードが侵害/危害を受ける可能性があります。

クレデンシャルスタッフィングを防止する方法

ユーザーがクレデンシャルスタッフィングを防止する方法

ユーザーの観点からは、クレデンシャルスタッフィングに対する防御は非常に単純です。ユーザーは、異なるサービスごとに常に一意のパスワードを使用する必要があります(これを実現する簡単な方法は、パスワードマネージャーを使用することです)。ユーザーが常に一意のパスワードを使用する場合、そのユーザーのアカウントに対してクレデンシャルスタッフィングは機能しません。追加のセキュリティ対策として、利用可能な場合は常に二要素認証を有効にすることをお勧めします。

企業がクレデンシャルスタッフィングを防止する方法

クレデンシャルスタッフィングの阻止は、認証サービスを実行する企業にとってより複雑な課題です。クレデンシャルスタッフィングは、他社のデータ漏えいの結果として発生します。クレデンシャルスタッフィング攻撃の被害を受けた企業は、必ずしも自社のセキュリティが侵害/危害を受けているわけではありません。

会社は、ユーザーが一意のパスワードを利用するように提案はできますが、これをルールとして効果的に施行することはできません。一部のアプリケーションでは、送信されたパスワードを受理する前に、既知の侵害/危害を受けたパスワードのデータベースに照合することで、クレデンシャルスタッフィングへの対策としていますが、これは絶対確実ではありません。ユーザーは、侵害されたことのないサービスのパスワードを再利用している可能性もあります。

追加のログインセキュリティ機能を提供することでクレデンシャルスタッフィングを軽減できます。二要素認証などの機能を有効にし、両方にログインするときにユーザーにCAPTCHAを入力するよう要求することも、悪意のあるボットを阻止するのに役立ちます。これらはどちらもユーザーにとって不便な機能ですが、多くの人は、不便でもセキュリティの脅威を最小限に抑えることは価値があることに同意するでしょう。

クレデンシャルスタッフィングに対する最も強力な保護は、ボット管理サービスです。ボット管理は、IPレピュテーションデータベースと組み合わせたRate Limitingを使用して、正当なログインに影響を与えることなく、悪意のあるボットがログインを試行するのを防ぎます。Cloudflare ボット管理は、毎日Cloudflareネットワークを介してルーティングされる4,250億件のリクエストからデータを収集し、非常に高い精度でクレデンシャルスタッフィングボットを特定して停止できます。