辞書攻撃とは?初心者にもわかる解説と対策共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
辞書攻撃とは?初心者にもわかる解説と対策共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


辞書攻撃とは?

辞書攻撃はパスワードを推測する代表的な手口のひとつです。攻撃者は事前に作成した 辞書 と呼ばれる候補リストを順番に試し、正解のパスワードを見つけ出そうとします。

この手法は 実生活でよく使われる語句や短いパスワードを狙うため、単純な総当たりの brute force より効率が高いとされています。辞書には日常的に使われがちな語彙だけでなく、過去の流出データから抽出された組み合わせも含まれます。

辞書攻撃のしくみ

辞書攻撃には大きく分けてオンライン攻撃とオフライン攻撃の二種類があります。オンライン攻撃は実際のサービスのログイン画面に対して試行を繰り返し、アカウントの数を増やしていく方法です。オフライン攻撃はデータベース内のハッシュ化されたパスワードを手元に取り込み、候補パスワードのハッシュと照合します。いずれの場合も候補のリストを機械的に回していく点が特徴です。

オンライン攻撃ではサーバー側の対策が効きやすく、失敗した場合のアカウントロックやIPブロック、Captcha などの対策が有効です。一方オフライン攻撃はハッシュの強度が鍵となり、ソルトや強力なハッシュ関数を使うことが防御の要になります。

典型的なパスワードの傾向とリスク

123456
password
123456789
qwerty
111111

このような短い単語や連番は辞書攻撃の初期段階でよく当たるため、必ず避けるべきです。長さを重視したパスワードの方が辞書攻撃に対して強くなります。

対策と予防策

個人の利用者ができる基本的な対策として、長くて覚えやすいパスフレーズを使うことと、1つのアカウントで複数のサービスのパスワードを使い回さないことが挙げられます。パスワード管理ツールを使い、各サービスごとに異なる長いパスワードを生成・保管するのが効果的です。

さらに二要素認証や多要素認証を有効化することが、辞書攻撃の被害を大幅に減らします。もし第三者がパスワードを入手しても、追加の認証がなければログインは成功しにくくなります。サーバー側の対策としてはアカウントのレート制限・IP制限・Captchaの実装、ハッシュのソルト化と Argon2 や bcrypt などの強いハッシュ関数の採用、監視システムによる不審な試行の検知と通知などが重要です。

最後に、学習として覚えておきたいのは辞書攻撃は「適切な対策を講じることでかなり抑えられる」という点です。自分のアカウントだけでなく、使い回しをしているサービスがあれば、すべてのパスワードを見直すことをおすすめします。

自分のセキュリティを高めるには長さと多様性、そして二要素認証の組み合わせが最も有効です。


辞書攻撃の同意語

辞書攻撃
攻撃者が辞書形式の語句リストを使ってパスワードを推測する攻撃の総称。一般的には日常語や流出パスワードのリストを用い、順番に試していくタイプの手法です。
ディクショナリ攻撃
辞書攻撃の別表記。語彙リストを用いてパスワードを推測する攻撃を指します。
辞書型攻撃
辞書形式の語句リストを基にパスワードを推測する攻撃。辞書攻撃と同義の表現です。
辞書ベース攻撃
辞書リストを基盤にして行う推測攻撃。リスト内の語を順次試すのが特徴です。
パスワード辞書攻撃
パスワード候補の辞書(語のリスト)を用いて推測する攻撃。パスワード推測に特化した表現です。
パスワード推測攻撃
パスワードを推測するための攻撃手法の総称。辞書攻撃を含む複数の手法を指すことがあります。
単語リスト攻撃
単語のリストを用いてパスワードを推測する攻撃。辞攻撃の同義語として使われる表現です。
語彙攻撃
一般語彙をリスト化して用いる推測攻撃の表現。日常語や固有名詞を含むリストが用いられます。
語彙ベース攻撃
語彙リストを基盤として行う攻撃。辞書ベース攻撃の語彙版として理解されます。

辞書攻撃の対義語・反対語

ルートフォース攻撃
辞書に載っている語を使わず、すべての可能な文字列を試す攻撃。語彙リストに依存せず、対象のパスワードの長さや文字種に応じて計算資源を大量に要するが、発見される可能性は語彙依存の辞書攻撃よりも高い場合がある。
当たり攻撃
辞書攻撃の対極として捉えられることが多い、全ての組み合わせを順番に試す攻撃。語彙リストに頼らず、最悪ケースでは膨大な試行回数を要する。
非辞書的攻撃
辞書に掲載された語彙を使わず、未知の文字列を試す攻撃の総称。ランダム性やパターン探索など、辞書依存を避けるアプローチを含む。
ランダム攻撃
攻撃者がランダムに文字列を生成して試す方法。辞書リストを使わないため予測可能性が低い一方で、実用的には効率が落ちやすい。
推測的攻撃
一般的なパスワード傾向やユーザー行動を推測して試す攻撃。辞書攻撃とは異なるヒューリスティック寄りのアプローチで、社会要因や統計情報を活用することがある。

辞書攻撃の共起語

パスワードリスト
辞書攻撃などで利用される、推測候補の集合。公開データベースや過去の流出データから作られることが多い。
辞書ファイル
攻撃用に用意された語彙のリスト。英語・日本語を含む一般語・パスワード候補が混在している。
レインボーテーブル
事前計算済みのハッシュと元の文字列の対応表。ハッシュ値から元のパスワードを迅速に特定する手法の一つ。
レインボーテーブル攻撃
レインボーテーブルを使って、保存されたハッシュから元パスワードを高速に特定する攻撃の総称。
総当たり攻撃
すべての組み合わせを試して正しいパスワードを見つける方法。計算量が膨大になるが、対策次第で防御可能。
パスワードポリシー
パスワードの長さ・複雑さ・有効期限などを定めるルール
ソルト
ハッシュの前に加えるランダムな文字列。辞書攻撃やレインボーテーブルの影響を減らすために使われる。
ソルト付きハッシュ
ソルトを付与してハッシュ化した出力。再利用を防ぐ工夫の一つ。
ハッシュ
入力データを固定長の値へ変換する不可逆な計算結果。元データへ戻すことは基本的に困難。
ハッシュ化アルゴリズム
ハッシュを作る手法。例として MD5・SHA-1・SHA-256 などがある。
オフライン攻撃
入手したハッシュを自分の環境で検証する攻撃形態。オンライン認証を介さない。
オンライン攻撃
実際のログイン画面などへ直接試行を繰り返す攻撃。ネットワーク越しの試行が中心。
二要素認証(2FA)
追加の認証要素を要求する認証方式。辞書攻撃の影響を緩和する効果が高い。
アカウントロックアウト
連続失敗時にアカウントを一定時間ロックする防御策。
アカウント乗っ取り
不正に他人のアカウントへアクセスする行為。辞書攻撃のリスクによって生じ得る事象の一つ。
パスワード再利用
サービスで同じパスワードを使い回すこと。セキュリティ全体を脆弱化させる原因となる。
クラックツール
パスワードを解読・推測するためのソフトウェア群。研究・防御の文脈で扱われることが多い。
ジョン・ザ・リッパー
代表的なパスワードクラックツールのひとつ。セキュリティ評価の教材としても扱われる。
hashcat
高度なパスワードハッシュ解析ツール。研究・セキュリティ評価の現場でよく用いられる。
パスワード強度
パスワードの長さ・複雑さ・推測困難さを総合的に評価したもの。
セキュリティ対策
辞書攻撃へ対処するための対策全般。パスワードポリシーや2FA、アカウント保護が含まれる。
パスワード管理
安全にパスワードを作成・保存・運用する方法。パスワードマネージャーの活用など。
脆弱性
システムの弱点や欠陥。攻撃者に利用されやすいポイントを指す。
試行回数制限
一定回数の認証失敗でアクセスをブロックする設定。辞書攻撃の成功率を低下させる防御策。
推測攻撃
パスワードを推測して不正アクセスを試みる攻撃の総称。
ブルートフォー
総当たり攻撃の別名。全候補を順次試す最も基本的な攻撃手法。

辞書攻撃の関連用語

辞書攻撃
辞書に載っている語句のリストを順番に組み合わせて試す、古典的なパスワード推測手法です。短く使われやすい語が狙われやすい傾向があります。
ブルートフォース攻撃
すべての可能な文字列を総当たりで試す、最も基本的な推測攻撃の一種です。
レインボーテーブル攻撃
事前に計算済みのハッシュと元文字列の対応表を使い、ハッシュ化されたパスワードを特定しようとする攻撃。ソルトが使われていない場合に有効です。
レインボーテーブル
大量の事前計算済みハッシュと文字列の対応表。ソルトの使用を前提としていない場合に有効です。
事前計算攻撃
攻撃者が事前に大量のハッシュを計算して表を作成し、後で原文を検証する際に高速化する手法。レインボーテーブルはこの概念の具体例です。
ハッシュ関数
入力データを一定長の値に変換する関数。パスワード保護の基盤となる要素です。
パスワードハッシュ
パスワードをハッシュ化して保存する値のこと。平文のパスワードを保存せず、ハッシュで表します。
ソルト
パスワードと一緒にランダムなデータを加えてハッシュ化する追加データ。異なるソルトにより同じパスワードでもハッシュが変わります。
ソルト付きハッシュ
ソルトを加えてハッシュ化した結果として保存される表現。別のソルトを用いることで同一パスワードのハッシュが異なります。
ペッパー
サーバー側で秘密に保つ値をパスワードハッシュ計算に加える手法。漏洩しても安全性を高めます。
PBKDF2
反復回数を多く設定して計算コストを上げる鍵派生関数の一種。辞書攻撃に対する耐性を高めます。
bcrypt
パスワードハッシュアルゴリズムの一つ。ソルトと反復回数を組み込み、計算コストを調整できます。
Argon2
現代的なパスワードハッシュアルゴリズムで、メモリ消費量と計算コストのバランスを重視して高い耐性を提供します。
scrypt
メモリ集約型のパスワードハッシュアルゴリズムで、辞書攻撃に対する耐性を高めます。
アカウントロックアウト
一定回数の誤った認証情報入力後にアカウントを一定期間ロックして不正アクセスを防ぐ対策です。
レートリミット
短時間に多数のログイン試行を防ぐ仕組み。推測の成功確率を低下させます。
多要素認証
パスワード以外の要素も要求する認証方式。盗まれたパスワードだけでは不正アクセスを防ぎやすくします。
パスワード強度
長さ、文字種、予測可能性などを総合して推測難易度を評価する指標です。
パスワードポリシー
最低長さ、使用可能文字種、再利用禁止など、パスワードの基準を規定する方針です。
クレデンシャルスタッフィング
流出したIDとパスワードを別サイトで試す攻撃のこと。辞書攻撃と関連しますが別の概念です。

辞書攻撃のおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
17137viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
3212viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1280viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1243viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
1162viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
1107viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
1095viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
1036viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
904viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
901viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
866viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
858viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
847viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
832viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
805viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
796viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
695viws
onedrive.sync.service.exeとは?初心者向けに徹底解説と安全対策共起語・同意語・対義語も併せて解説!
649viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
640viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
634viws

新着記事

インターネット・コンピュータの関連記事