辞書攻撃は、パスワードの解読を目的に、事前に用意されたリスト(辞書)を使用して、推測可能なパスワードを順番に試す手法です。通常、一般的なパスワードや単語がリスト化された「辞書ファイル」を用意し、これに基づいてパスワードを解読しようとします。多くの場合、リストにはよく使われる単語や組み合わせ、簡単なパスワード(「password」「123456」「qwerty」など)が含まれ、SNSやウェブサイト、Wi-Fiネットワークなどで脆弱なパスワードが設定されている場合に有効です。
辞書攻撃は、特に単純なパスワードが使われている場合や、ユーザーが容易に推測できるフレーズや単語を使っている場合に効果的で、攻撃の成功率が高くなるため、セキュリティリスクが増大します。
辞書攻撃の手法
辞書攻撃は、主に以下の手法で行われます。
- 一般辞書を使った攻撃
通常の辞書に記載されている英単語やフレーズを試行する方法です。特に、パスワードに一般的な単語が含まれている場合、この手法で解読されやすくなります。 - 特定パスワードリストを使った攻撃
セキュリティ上でよく使われるパスワードを集めたリスト(例:「rockyou.txt」など)を使い、試行します。これには、過去に流出したパスワードや、よく使用されるパスワードが含まれるため、解読効率が高いです。 - 組み合わせ辞書攻撃
単語の前後に数字や記号を追加したり、大文字と小文字の変換を含む組み合わせを試す方法です。たとえば、「password123」や「P@ssw0rd」といったような変形パスワードも含めて試行します。 - ハイブリッド攻撃
辞書攻撃とブルートフォース攻撃を組み合わせた手法で、辞書ファイルをもとに一定範囲のブルートフォース試行を加えます。これにより、辞書リストにない変形パスワードも解読する可能性が高まります。
辞書攻撃が行われやすい場面
辞書攻撃は、以下のような場面で使われることが多く、特に脆弱なパスワードが設定されている場合に効果的です。
- ログインページ
SNSやショッピングサイト、ビジネスツールのログインページで、ユーザーのパスワードが辞書攻撃によって推測され、不正ログインされる場合があります。 - Wi-Fiネットワーク
Wi-Fiパスワードが簡単な場合、辞書攻撃で突破され、外部から不正アクセスを許してしまうリスクがあります。特にWEPや簡単なWPA/WPA2-PSK(パスワード暗号化)では、この攻撃が有効です。 - 暗号化ファイルのパスワード解読
暗号化されたZIPファイルやPDFファイルなども、辞書攻撃を用いてパスワードが解読されることがあります。特に、ファイルの暗号化パスワードが単純な場合には、短時間で解読される可能性があります。
辞書攻撃の使用ツール
辞書攻撃には、以下のようなツールが利用されます。
- John the Ripper
強力なパスワード解析ツールで、辞書ファイルを使用した辞書攻撃のほか、ハイブリッド攻撃やブルートフォース攻撃も可能です。多くのパスワード形式に対応しているため、幅広く利用されています。 - Hydra
ネットワークログイン攻撃に特化したツールで、辞書攻撃を利用してログインページへの不正アクセスを試行します。多様なプロトコル(FTP、SSH、Telnetなど)に対応していることが特徴です。 - Aircrack-ng
Wi-Fiネットワークのパスワード解読に用いられるツールで、辞書攻撃を用いてWEPやWPA暗号化の解読を行います。ネットワークの脆弱性を検証する目的で使用されます。 - Hashcat
パスワードのハッシュ(暗号化された形式)を解読するためのツールで、辞書攻撃やブルートフォース攻撃に対応しています。特に、GPUを活用して高速にパスワード解読が可能であるため、非常に強力です。
辞書攻撃に対する防御策
- 複雑なパスワードの設定
辞書攻撃の対策として、一般的な単語や簡単な文字列を避け、ランダムで長いパスワードを設定することが効果的です。大文字、小文字、数字、記号を組み合わせた複雑なパスワードは、辞書リストに含まれないため、辞書攻撃に強くなります。 - 多要素認証(MFA)の導入
2段階認証や多要素認証を設定することで、パスワードが推測されても、追加の認証ステップが必要になるため、不正アクセスを防ぐことができます。 - アカウントロック機能の活用
連続したログイン失敗回数が一定数を超えるとアカウントをロックする機能を設定することで、辞書攻撃やブルートフォース攻撃を防止できます。 - パスワードの定期変更
パスワードを定期的に変更することで、万が一、古いパスワードが辞書攻撃で解読されても、悪用される前に新しいパスワードに更新することができます。 - 辞書ファイルにないパスワードの使用
名前や一般的な単語、容易に推測される数字の組み合わせを避け、無関係な文字列の組み合わせやランダムなパスワード生成ツールを活用することで、辞書攻撃への防御を強化できます。
まとめ
辞書攻撃は、パスワードの推測に頻出する単語をリスト化して、順番に試行することでパスワードを解読する手法であり、特に単純なパスワードには効果的です。辞書攻撃はログインページやWi-Fiネットワーク、暗号化ファイルのパスワード解読などに用いられ、John the RipperやHashcatなどのツールを用いて実行されます。
この攻撃に対する防御策として、強力なパスワードの設定、多要素認証、アカウントロック機能の活用などが効果的です。辞書攻撃のリスクを理解し、複雑なパスワードやセキュリティ強化策を導入することで、不正アクセスや情報漏洩から保護することが求められます。