ブルートフォース攻撃の対策7選|仕組みと種類、有効な防御策を解説

bruteforce_main.png

ブルートフォース攻撃(ブルートフォースアタック)は、特定のIDに対して考えられる全てのパスワードを試行し、不正ログインを狙うサイバー攻撃の一種です。この攻撃を防ぐためには、個人とシステム管理者双方の視点からの対策が欠かせません。

この記事では、ブルートフォース攻撃の仕組みや種類、具体的な被害例を解説するとともに、今日から実践できるブルートフォース攻撃への対策を個人向け・管理者向けに分けて紹介します。

ブルートフォース攻撃(ブルートフォースアタック)とは?総当たりでパスワードを解読する仕組み

trend-m-vulnerability.png

ブルートフォース攻撃とは、日本語で「総当たり攻撃」とも呼ばれ、パスワードを解読するために考えられるすべての文字列の組み合わせを、順番に試行する攻撃手法です。

攻撃者は専用のツールを用いて、英数字や記号の組み合わせを自動的かつ高速に生成し、ログインできるまで繰り返し試します。非常に原始的な方法ですが、わかりやすく単純なため、多くのシステムに対して脅威となります。

短いパスワードや単純な文字列は、この攻撃によって短時間で解読される危険性があります。

ブルートフォース攻撃によって引き起こされる具体的な被害

trend-BitLocker.png

ブルートフォース攻撃によって不正ログインが成功すると、さまざまな被害が発生します。

代表的なものとして、アカウントの乗っ取りによる個人情報や組織の機密情報の漏洩が挙げられます。また、SNSアカウントを乗っ取られて不適切な投稿をされたり、ECサイトで不正な購入をされたりする金銭的な被害も考えられるでしょう。

さらに、Webサイトが改ざんされたり、サーバーをマルウェアに感染させられたりするほか、他のシステムを攻撃するための「踏み台」として悪用される二次被害につながるケースもあります。

関連記事

ブルートフォース攻撃の主な種類と類似する攻撃との違い

trend-3points_2.png

ブルートフォース攻撃には、その手法によっていくつかの種類が存在します。

また、パスワードを特定しようとする類似の攻撃もあり、それぞれ特徴が異なります。代表的な攻撃手法とそれらの違いを理解することで、より効果的な対策を立てることが可能です。

ここでは、ブルートフォース攻撃から派生した手法や、関連性の高いほかの攻撃について3つ解説します。

リバースブルートフォース攻撃

リバースブルートフォース攻撃は、従来の総当たり攻撃とは逆のアプローチをとるサイバー攻撃です。

一般的なブルートフォース攻撃が特定のユーザーIDに対して多数のパスワードを試すのに対し、この攻撃では「123456」や「password」「qwerty」など利用されがちな脆弱なパスワードを一つ固定し、不特定多数のユーザーIDやメールアドレスに対してログインを試行します。同一IDへの連続試行ではないため、回数制限によるアカウントロックや検知を回避しやすい点が特徴です。

弱いパスワードを設定している利用者が一定数存在することを前提としており、一度の攻撃で複数アカウントの不正ログインにつながる恐れがあります。そのため、管理者は多要素認証の導入など、多層的な認証対策を講じることが重要です。

辞書攻撃(ディクショナリーアタック)

辞書攻撃(ディクショナリーアタック)は、ブルートフォース攻撃のようにすべての文字列を試すのではなく、英単語や人名、地名、よく使われるパスワードのリストを用いてログインを試みる手法です。

攻撃には過去の情報漏えいで流出したパスワード一覧が使われることもあり、「password123」のような単語と数字の組み合わせも標的になります。総当たり攻撃より試行回数を抑えながら効率的に突破を狙えるため、短時間で不正ログインにつながる恐れがあります。

また、他サイトで流出したID・パスワードを使い回す利用者を狙い、パスワードリスト攻撃の足掛かりにされるケースも存在します。誕生日や名前など推測しやすい情報を避け、複雑で推測されにくい文字列を設定することが重要です。

パスワードリスト攻撃(リスト型攻撃)

パスワードリスト攻撃は、過去に他のWebサービスなどから流出したIDとパスワードの組み合わせを流用し、別のサービスで不正ログインを試みる攻撃手法です。多くの利用者が複数のサイトで同じ認証情報を使い回している点を悪用するもので、リスト型アカウントハッキングとも呼ばれます。

実際に使用されていた認証情報を使うことから、ランダムな文字列を試すブルートフォース攻撃より成功率が高く、効率的にアカウント侵害を狙えるのが特徴です。さらに、1つのアカウントへの試行回数が少ないため、アカウントロックなどの対策を回避されやすく、通常のログインと見分けにくい側面もあります。

対策としては、利用者がパスワードの使い回しを避けることに加え、管理者側も多要素認証の導入など多層的な防御をおこなうことが肝要です。

今すぐできるブルートフォース攻撃への対策【個人向け】

trend-ITcontrol3.png

個人ユーザーがブルートフォース攻撃から自身のアカウントを守りたい場合、特別なツールを導入しなくても、日々の習慣やサービスの設定を見直すことでセキュリティを大幅に向上させることが可能です。

本項では、個人ですぐに実践できる基本的な対策を3つ紹介します。

パスワードは長く複雑な文字列に設定する

パスワードを長く、かつ複雑にすることは、ブルートフォース攻撃に対する最も基本的な対策です。

桁数が増えるほど、また使用する文字の種類(英大文字、英小文字、数字、記号)が増えるほど、攻撃者が試行すべきパターンの総数が爆発的に増加し、解読に要する時間が飛躍的に長くなります。少なくとも12文字以上を目安に、推測されにくい独自の文字列を設定することが推奨されます。

パスワード生成ツールなどを活用するのも有効な手段でしょう。

二要素認証(多要素認証)を有効化してセキュリティを強化する

二要素認証(多要素認証)は、IDとパスワードに加えて、SMSで送られる確認コードや認証アプリが生成するワンタイムパスワードなど、別の要素での認証を要求する仕組みです。

万が一ブルートフォース攻撃によってパスワードが突破されたとしても、この追加の認証がなければログインが完了しないため、不正アクセスを極めて効果的に防げます。

多くのオンラインサービスで設定可能であり、セキュリティを強化するために必ず有効化しておくべき機能です。

複数のサービスで同じパスワードを使い回さない

異なるサービスで同じIDとパスワードの組み合わせを使い回すことは、パスワードリスト型攻撃の被害に直結するため、絶対に避けるべきです。

一つのサービスから認証情報が漏洩した場合、その情報をもとに他のサービスでも不正ログインされ、被害が連鎖的に拡大する危険があります。サービスごとに固有のパスワードを設定することで、万が一のリスクを最小限に抑えられます。

パスワード管理ツール(パスワードマネージャー)を利用して、複雑なパスワードを安全に管理することが現実的な解決策です。

システム側で実装すべきブルートフォース攻撃への対策【管理者向け】

trens-mail_security2.png

Webサイトや社内システムを管理する立場にある場合、ユーザー個人の対策に依存するだけでなく、システム側で堅牢なセキュリティ対策を実装することが不可欠です。

サーバーやアプリケーションの設定を見直し、攻撃者が容易に試行を繰り返せない環境を構築することで、サービス全体の安全性を高めることができます。

管理者として導入すべき代表的な対策を紹介します。

アカウントロック機能でログイン試行回数を制限する

アカウントロックは、ログイン試行の回数に上限を設け、一定回数連続で失敗したアカウントを一時的に利用できなくする機能です。これにより、攻撃者がプログラムを用いて短時間に大量のパスワードを試行するブルートフォース攻撃の実行を物理的に困難にします。

ロックする時間や、管理者による解除が必要かどうかといったポリシーを適切に設定することで、正規ユーザーの利便性を損わずにセキュリティを強化することが可能です。

reCAPTCHAを導入してボットによる自動的な試行を防ぐ

reCAPTCHAは、アクセス者が人間かボット(bot:自動化されたプログラム)かを判別するための仕組みです。

ログイン画面などに導入することで、「私はロボットではありません」というチェックボックスや歪んだ文字の読み取り、画像の選択などをユーザーに要求し、ボットによる自動的なログイン試行を阻止します。

これにより、ブルートフォース攻撃のようにプログラムで大量の試行をおこなう攻撃を効果的に防ぐことができます。

IPアドレスによるアクセス制限を設ける

特定のIPアドレスからのアクセスを許可/禁止にすることは、ブルートフォース攻撃への有効な対策の一つです。

例えば、社内システムであればアクセス元を自社のIPアドレスのみに限定したり、攻撃元として特定された不審なIPアドレスからのアクセスを拒否したりします。また、海外からの攻撃が多い場合は、日本国外からのアクセスを原則として遮断することも有効な場合があります。

ただし、攻撃者はIPアドレスを頻繁に変更するため、継続的な監視と更新が必要です。

WAFを導入して不正なアクセスを検知・遮断する

WAF(Web Application Firewall)は、Webアプリケーションの脆弱性を狙った攻撃を検知し、遮断するためのセキュリティ製品です。

WAFを導入することで、短時間に同一のログインページへ大量のアクセスがあるといったブルートフォース攻撃特有の通信パターンを検知し、自動的にブロックすることが可能になります。他のサイバー攻撃にも対応できるため、Webサイトやサービスを公開する上で総合的なセキュリティレベルを向上させる対策です。

ブルートフォース攻撃に関するよくある質問

trend-ITAM1.png

ブルートフォース攻撃は、古典的な手法でありながら現在も多くの被害を生んでいる深刻な脅威です。そのため、システム担当者や一般ユーザーから、具体的な防御の限界や攻撃を受けた際の兆候について多くの疑問が寄せられています。

攻撃のメカニズムを正しく理解し、どのような状態が危険なのかを知ることは、実効性の高いセキュリティ対策を講じるための第一歩です。以下より、実務に役立つ頻出の質問とその回答についてご紹介します。

パスワードの桁数を増やすと安全性はどれくらい向上する?

パスワードの桁数を増やすと、安全性は飛躍的に向上します。桁数が1つ増えるだけで解読に必要な時間の組み合わせが爆発的に増加するため、攻撃を非常に困難にさせます。

例えば、英小文字のみの8桁でも約2千億通りの組み合わせが生まれますが、10桁になると約141兆通りに増え、解読にかかる時間が大幅に伸びます。

ログイン失敗の通知やログが大量にある場合、攻撃されていると考えたほうがよい?

ブルートフォース攻撃を受けている可能性が非常に高いです。

特定のIPアドレスや複数のIPアドレスから、一つのユーザーIDに対して短時間に大量のログイン失敗が記録されている場合、攻撃の典型的な兆候です。速やかにアクセス元のIPアドレス制限などの対策を検討してください。

ブルートフォース攻撃の被害に遭ってしまった場合の対処法は?

まずサーバーをネットワークから隔離し、被害拡大を防ぎます。

次に、乗っ取られたアカウントのパスワードを強制的に変更し、不正な操作がおこなわれていないかログを調査します。併せて、原因となった脆弱性の修正も必要です。

被害の大きさによっては、専門家や関係機関への相談も視野に入れてください。

参考

まとめ

trend-security-governance3.png

ブルートフォース攻撃は、単純ながらも非常に強力な攻撃手法であり、IDとパスワードを用いるあらゆるシステムがその脅威に晒されています。この攻撃から重要な情報を守るためには、一つの対策に頼るのではなく、複数の防御策を組み合わせる「多層防御」の考え方が重要です。

個人としてはパスワードの強化と二要素認証の利用を徹底し、システム管理者としてはアカウントロックやWAFといった仕組みを導入することで、不正アクセスのリスクを大幅に低減させられます。

利便性とセキュリティのバランスを考慮しつつ適切な対策を重畳的に積み重ねていくことが、被害を最小限に抑えるための最も確実な道となります。日頃から最新の攻撃トレンドを把握し、防御体制を継続的にアップデートする姿勢を持ち続けましょう。

関連記事
著者プロフィール
SS1LAB編集部
IT資産管理ツールSS1/SS1クラウドを開発・販売している、株式会社ディー・オー・エスの営業企画部メンバーで構成されています。IT資産管理・ログ管理・情報セキュリティ対策など、情シス業務の効率化に役立つ最新トレンド情報を随時発信中!