ブルートフォース攻撃とは何か、そしてどのように機能するのか?
突破されないパスワード
2024年5月30日
著者: Ahona Rudra
翻訳: 岩瀨 彩江
この記事はPowerDMARCのブログ記事 What is a Brute Force Attack and How Does it Work? の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。
技術が進歩し続けるにつれて、サイバーセキュリティの脅威はますます複雑で高度になっています。
そのような脅威の一つがブルートフォース攻撃であり、これはハッカーが標的のアカウントやシステムへ不正アクセスを得るために使用する手法です。
ブルートフォース攻撃は、いくつかの大規模なデータ侵害の原因となっており、個人や組織にとって深刻な懸念事項となっています。
この記事では、ブルートフォース攻撃の世界を掘り下げていきます。
それが何であるのか、どのように機能するのか、そして自分自身やシステムを守るためにどのような手段を取ることができるのかを見ていきましょう。
重要なポイント
- ブルートフォース攻撃は、正しい認証情報が見つかるまで、あらゆる可能な組み合わせを体系的に試す手法です。
- ブルートフォース攻撃には、単純なブルートフォース、クレデンシャルスタッフィング、辞書攻撃、ハイブリッド攻撃、リバースブルートフォース攻撃など、さまざまな種類があります。
- 大文字と小文字、数字、記号を組み合わせた強力でユニークなパスワードを使用することは、ブルートフォース攻撃から身を守るために不可欠です。
- 二要素認証を導入することで、正しいパスワードを入手されても攻撃者がアクセスすることをより困難にする追加のセキュリティ層を提供できます。
- アカウントの活動を監視し、ログイン試行回数を制限することは、不正アクセスの検出やブルートフォース攻撃の成功を防ぐのに役立ちます。
- ブルートフォース攻撃の定義
- ブルートフォース攻撃とは、通常はユーザー名とパスワードといった認証情報のあらゆる組み合わせを試し、正しいものが見つかるまで繰り返すサイバー攻撃の一種です。
攻撃者の目的は、標的のアカウントやシステムに不正アクセスを得ることです。 ー出典
この攻撃は通常、自動化されており、攻撃者は多くの潜在的なパスワードやその他の認証情報を生成するために、専用のツールやソフトウェアを使用できます。
この手法は、攻撃者が標的のパスワードについて事前知識を持っておらず、またパスワードが容易に推測できない場合によく利用されます。
ブルートフォース攻撃は、オンラインアカウント、メールアカウント、サーバー、モバイルデバイスなど、認証を必要とするあらゆるシステムを標的にする可能性があります。
ブルートフォース攻撃とは何ですか?
ブルートフォース攻撃では、攻撃者が標的のシステムやアカウントへのアクセスを許可する正しい認証情報が見つかるまで、文字のあらゆる可能な組み合わせを体系的に試します。
ブルートフォース攻撃は通常自動化されており、ソフトウェアや専用ツールによって実行されます。
攻撃者は、辞書、ワードリスト、アルゴリズムなどを使って、多数の潜在的なパスワードやその他の認証情報を生成することができます。
ブルートフォース攻撃はどのように機能しますか?
ブルートフォース攻撃は通常、攻撃者が潜在的なユーザ名またはメールアドレスのリストを取得することから始まります。
次に、攻撃者は特化したツールやソフトウェアを使用して、潜在的なパスワードやその他の認証情報のリストを生成します。
攻撃で使用されるソフトウェアやツールは、正しい組み合わせが見つかるまでユーザ名とパスワードのあらゆる組み合わせを体系的に試します。
このプロセスは時間がかかることがあり、特にパスワードが長く複雑な場合は顕著です。
ブルートフォース攻撃でパスワードを解読するのに要する時間は、パスワードの複雑さ、暗号化の強度、攻撃者のコンピュータやネットワークの速度など、いくつかの要因によって異なります。
例えば、大文字と小文字の英字、数字、記号を組み合わせた強力なパスワードは、ブルートフォース攻撃で解読するのに数ヶ月あるいは数年かかることがあります。
ブルートフォース攻撃の種類
ブルートフォース攻撃は、さまざまな組み合わせを体系的に試すことで正しい認証情報を突き止めることを目的としています。
ブルートフォース攻撃が成功すると、被害組織にとって非常に大きなコストと時間負担をもたらすことがあります。
ブルートフォース攻撃にはいくつかの種類があります。
- 単純なブルートフォース攻撃
-
単純なブルートフォース攻撃は、考え得るすべてのパスワードを順に試し、それらが機能するかどうかを確認することを含みます。
この種の攻撃の主な利点は非常に高速であることですが、多くのシステムが試行回数を制限するため、非常に効果が薄いこともあります。
さらに、いくつかのパスワードはあまりにも長いため、どのコンピュータシステムでも合理的な時間内に処理することができません。 - クレデンシャルスタッフィング
-
クレデンシャルスタッフィングは、以前の侵入やデータ漏えいで取得した有効なユーザ名とパスワードのリストを使用するタイプのパスワード推測攻撃です。
攻撃者はPastebinのようなWebサイトでユーザ名やパスワードを検索し、これらのリストを使って他のサイトでその認証情報がまだ通用するかを試みます。
これにより、攻撃者は同じ認証情報を使い回しているアカウントへ不正アクセスできることがあります。 - 辞書型ブルートフォース攻撃
-
攻撃者は辞書を使用してパスワードを見つけ出そうとします。
攻撃者は最も一般的なパスワードを用意し、それらを対象のWebサイトで試します。
これは大量のトラフィックを発生させるため、検出および防止が非常に容易です。 - ハイブリッド型ブルートフォース攻撃
-
ハイブリッド型ブルートフォース攻撃は、複数の並行する手法を組み合わせて実行されます。
例えば、社会的工学やフィッシング攻撃で入手した電子キーを使用しようとしながら、同時にパスワードを推測するような手法が含まれます。 - リバース・ブルートフォース攻撃
-
リバース・ブルートフォース攻撃とは、攻撃者がターゲットの生活や活動について知っていることに基づいてパスワードを推測しようとする攻撃です。
例えば、誰かがあなたがカラフルな靴下を好むことを知っていた場合、攻撃者は「Socks123」や「ColorfulFeet」のようなパスワードを試すかもしれません。
この例は遊び心があるように見えますが、個人的な嗜好に関連しない、予測不可能で強力なパスワードを使用することの重要性を強調しています。
ブルートフォース攻撃からの防御
ブルートフォース攻撃はパスワードを狙った攻撃として一般的ですが、自分自身を守る方法はいくつかあります。
以下は、ブルートフォース攻撃から身を守る方法です。
- 強力なパスワードを使用する
-
すべてのアカウントに対して強力で一意なパスワードを使用することが重要です。
強力なパスワードは12文字以上であり、大文字と小文字、数字、記号の組み合わせを含むべきです。 - 二要素認証を有効にする
-
二要素認証は、電話に送られるコードやアプリなど、第二の認証要素を要求することでアカウントに追加のセキュリティ層を提供します。
これにより、攻撃者があなたのパスワードを入手していたとしても、アカウントへのアクセスがより困難になります。
関連情報: メール多要素認証 - ログイン試行回数を制限する
-
Webサイトやシステムでログイン試行回数を制限することで、ブルートフォース攻撃を防ぐことができます。
複数回の誤ったログイン試行の後に、アカウントをロックしたり、IPアドレスをブロックしたりすることが可能です。 - アカウントのアクティビティを監視する
-
定期的にアカウントのアクティビティを監視することで、不正アクセスの試みを検知するのに役立ちます。
異なる場所からのログイン試行や異常な時間のアクセスなど、通常と異なる活動があった場合に通知するアラートを設定できます。 - ソフトウェアを最新の状態に保つ
-
オペレーティングシステム、Webブラウザ、ウイルス対策ソフトなど、すべてのソフトウェアを最新の状態に維持することが重要です。
ソフトウェアの更新には、既知の脆弱性から保護するためのセキュリティパッチが含まれていることが多いです。 - CAPTCHA を使用する
-
自動化された攻撃を防ぐために、CAPTCHA をログインページに追加できます。
CAPTCHA は、数字や文字の列を入力するなどの簡単な課題を完了することで、人間であることを証明するようユーザに求めます。 - IP ブロッキングを実装する
-
同じ IP アドレスからの複数のログイン試行を防ぐために、IP ブロッキングを実装できます。
これは、単一の IP アドレスを使用して実行されるブルートフォース攻撃を防ぐのに役立ちます。
まとめ
要するに、ブルートフォース攻撃とは、敵対者が正しい答えや鍵を見つけるために、あらゆる可能な組み合わせや順列を試みる攻撃のことです。
したがって、ブルートフォース攻撃から身を守るために最も重要な 2 つのステップは、考えられる限り最強のパスワードを使用し、それを訪問する各サイトごとに固有のものにすること、そして無料のプロキシサーバーで IP アドレスを隠そうとしないことです。
攻撃者があなたについて持っている情報が少なければ少ないほど、パスワードを推測することは難しくなります。