October 21, 2022

ブルートフォース攻撃とは何か、そしてそれを防ぐ方法は?

ブルートフォース攻撃とは何か、そしてそれを防ぐ方法は?

データ侵害のコストを定量化するのは複雑ですが、ますます多くの組織が攻撃の犠牲になるにつれて、その潜在的な財政的影響はより明確になってきています。IBMの最新のデータ侵害コスト報告書によると、2022年に世界全体でのデータ侵害の平均コストは350万ドルという過去最高に達する見込みです。

ブルートフォース攻撃とは何ですか?

ブルートフォース攻撃とは何ですか?

このウェブ時代において非常に一般的な脅威が、総当たり攻撃です。総当たり攻撃とは、サイバーセキュリティにおいて、文字、数字、記号のすべての可能な組み合わせを体系的に試して正しいパスワードを発見しようとする試みです。パスワードだけが総当たり攻撃の対象というわけではなく、リンクやディレクトリ、ユーザー名、メールアドレスもよく狙われる対象です。

ブルートフォース攻撃の種類:

ブルートフォース攻撃には、一般的に5つの種類があります

  • 単純/従来型攻撃:
  • このようなブルートフォース攻撃では、攻撃者は特定の一連のIDを標的にして複数のパスワードを試します。ここでは、ハッカーが手動で推測を試みるか、ユーザーのログイン資格情報に関してソフトウェアを使用せずに試行錯誤法を用いるため、この方法は時間とリソースを大量に消費します。ハッカーは、すべての可能な文字、数字、特殊文字を生成しようとします。この方法は短いパスワードに対してのみ有効ですが、少し長いパスワードに対しては非常に非効率です。

  • 逆ブルートフォース攻撃:
  • パスワードスプレイングは、攻撃者がユーザー名のリストとデフォルトパスワードに基づいてアプリケーションにブルートフォースでログインする、逆ブルートフォース攻撃の一種です。この攻撃は、管理者が新規ユーザーにデフォルトパスワードを設定する領域で通常使用されます。通常、攻撃者はパスワードを推測しようとします。しかし、単一のアカウントに集中するブルートフォース攻撃とは異なり、この場合のパスワードインジェクション攻撃は複数のアカウントを同時に標的にします。ここでは、攻撃者は少数の共通パスワードで多数のアカウント(ユーザー名)にアクセスを試みます。

  • 辞書攻撃:
  • 名称から明らかですが、これは辞書に通常見られる多数の事前定義された一般的なフレーズや用語を使用する攻撃です。一般的に、優れたパスワードリストは攻撃者の成功確率を高めることができますが、ここでは潜在的なターゲットに対して複数回の試行が必要になることが多いです。この種の攻撃の欠点は、時間がかかり、最新の強力な攻撃手法と比較して確率が低いことです。

  • ハイブリッド総当たり攻撃:
  • この種の攻撃では、ハッカーは辞書攻撃と単純なブルートフォース攻撃を組み合わせます。ハッカーは通常ユーザー名を把握しているため、辞書攻撃と単純なブルートフォースの両方を用いてアカウントのログイン情報を特定しようとします。この手順では、辞書から一般的な単語を選び、それをランダムな数字や文字に置き換えます。この組み合わせアプローチはより効果的です。

  • 認証情報の流用攻撃(Credential Stuffing 攻撃):
  • 「クレデンシャルスタッフィング」攻撃とは、サイバー犯罪者が複数のウェブサイトのログイン欄に、乗っ取ったり何らかの形で漏洩したパスワードを入力する攻撃です。この攻撃は、ユーザーが同じユーザー名とパスワードの組み合わせを使用したり、異なるソーシャルメディアアカウントやプロファイルでパスワードを再利用した場合に成功します。盗まれた資格情報は、ダークウェブ上でサイバー犯罪者同士で売買や交換が行われます。

    ブルートフォース攻撃を調査する方法:

    ブルートフォース攻撃を調査する方法:

    攻撃者は、ブルートフォース攻撃によって常にパスワードを特定できます。パスワードの長さや複雑さによって、何兆もの組み合わせが存在する可能性があり、そのため対象のパスワードを解読するのに数年かかることもあります。

  • 同じIPアドレスから多数のログイン失敗が試行された。
  • 複数の異なるユーザー名を使用したログイン試行。
  • 複数の異なるユーザー名を使用したログイン試行
  • ログイン失敗の異常なパターン
  • 不審な帯域幅
  • ブルートフォース攻撃を防ぐ方法:

    総当たり攻撃の成功は、パスワードを解読するのに要する時間によって評価されます。パスワードの長さが増すにつれて、解読に必要な時間は指数関数的に増加します。1500万のキーストロークを毎秒行える企業レベルのリソースでも、7桁のパスワードを解読するには9分かかると推定されています。13桁のパスワードの場合は、35万年以上かかるでしょう。

  • 標準的なパスワードの使用は避けるべきですが、それよりも自身で作成したパスワードを使用するのが望ましいです。最も良いのは、15文字以上で、いくつかのキーワードを含む一意のパスワードを作成することです。ランダムな単語や文字で構成された長いパスワードは、より安全であり、パスワードの解読が難しくなります。
  • 多くのウェブサイトでは無制限のログイン試行が可能です。サイト管理者は、ドメインへの接続試行回数を制限するプラグインを導入し、総当たり攻撃をさらに防止することを推奨します。rootユーザーであっても、安全なシェル(SSH)接続に対して総当たり攻撃を許可してしまう可能性があるため、「DenyUsers root」と「PermitRootLogin no」を有効にして、ユーザーによるSSHアクセスを防ぐのが望ましいです。
  • ユーザーがシステムへのアクセスを許可される前に本人の身元を確認する必要がある、二要素または多要素認証(2FA/MFA)の導入を推奨します。2FAが有効になっている場合、ネットワークへのアクセス前に、ユーザーは携帯電話番号に割り当てられた一意のコードを入力して本人確認を求められます。
  • CAPTCHAを使用する利点は、アカウントの乗っ取り、違法な購入、およびその他の類似したシナリオから保護できることです。CAPTCHAは100%のセキュリティ応答を優先します。
  • Webアプリケーションファイアウォール(WAF)は、特定の時間内にリソースがURL空間に対して行えるリクエストの数を制限します。セッショントークンの盗難を目的としたブルートフォース攻撃に加えて、WAFはサーバーリソースを消費するサービス拒否(DoS)攻撃や、コンピューターネットワークのエラーをチェックする脆弱性スキャンツールの使用も防ぎます。
  • 無料トライアルを始める