応用情報技術者 2019年 春期 午前2 問38
問題文
パスワードクラック手法の一種である、レインボー攻撃に該当するものはどれか。
選択肢
ア:何らかの方法で事前に利用者IDと平文のパスワードのリストを入手しておき、複数のシステム間で使い回されている利用者IDとパスワードの組みを狙って、ログインを試行する。
イ:パスワードに成り得る文字列の全てを用いて、総当たりでログインを試行する。
ウ:平文のパスワードとハッシュ値をチェーンによって管理するテーブルを準備しておき、それを用いて、不正に入手したハッシュ値からパスワードを解読する。(正解)
エ:利用者の誕生日や電話番号などの個人情報を言葉巧みに聞き出して、パスワードを類推する。
パスワードクラック手法の一種である、レインボー攻撃に該当するものはどれか。【午前2 解説】
要点まとめ
- 結論:レインボー攻撃は、平文パスワードとハッシュ値をチェーンで管理したテーブルを使い、ハッシュ値からパスワードを逆算する手法です。
- 根拠:レインボーテーブルは事前計算済みのハッシュ値と対応するパスワードのチェーンを保存し、照合を高速化します。
- 差がつくポイント:総当たり攻撃や辞書攻撃との違いを理解し、レインボーテーブルの仕組みと利点を押さえることが重要です。
正解の理由
選択肢ウは、レインボー攻撃の特徴を正確に表しています。レインボーテーブルは、平文パスワードとそのハッシュ値を連鎖的に管理し、事前に計算されたテーブルを用いてハッシュ値から元のパスワードを高速に特定します。これにより、単純な総当たり攻撃よりも効率的にパスワードを解読可能です。
よくある誤解
レインボー攻撃は単なる総当たり攻撃や辞書攻撃と混同されやすいですが、事前計算済みのテーブルを利用する点が異なります。個人情報を聞き出す手法とは全く別の技術です。
解法ステップ
- 問題文の「レインボー攻撃」の定義を確認する。
- 各選択肢の説明をレインボーテーブルの特徴と照らし合わせる。
- 事前に計算されたハッシュ値とパスワードのチェーンを利用する説明がある選択肢を探す。
- それが選択肢ウであることを確認し、正解とする。
選択肢別の誤答解説
- ア:これは「クレデンシャルスタッフィング」と呼ばれ、レインボー攻撃とは異なります。
- イ:総当たり攻撃(ブルートフォース攻撃)であり、レインボーテーブルは使いません。
- ウ:レインボー攻撃の正しい説明です。
- エ:ソーシャルエンジニアリングの一種で、技術的なハッシュ解析とは異なります。
補足コラム
レインボーテーブルはハッシュ関数の逆算を高速化するために使われますが、ソルト(salt)をパスワードに付加することで効果を大幅に減少させられます。ソルトはパスワードごとに異なるランダムな値を加えるため、同じパスワードでも異なるハッシュ値になります。
FAQ
Q: レインボー攻撃はどのように防げますか?
A: パスワードにソルトを付加し、ハッシュ化することでレインボーテーブルの効果を無効化できます。
A: パスワードにソルトを付加し、ハッシュ化することでレインボーテーブルの効果を無効化できます。
Q: 総当たり攻撃とレインボー攻撃の違いは何ですか?
A: 総当たり攻撃はリアルタイムで全パターンを試すのに対し、レインボー攻撃は事前計算済みのテーブルを使い高速に逆算します。
A: 総当たり攻撃はリアルタイムで全パターンを試すのに対し、レインボー攻撃は事前計算済みのテーブルを使い高速に逆算します。
関連キーワード: レインボーテーブル、パスワードクラック、ハッシュ関数、ソルト、総当たり攻撃、クレデンシャルスタッフィング、ソーシャルエンジニアリング

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

