応用情報技術者試験ナビ ロゴ 応用情報技術者試験ナビ
合格発表日:2025年7月3日(あと29日)

応用情報技術者試験 平成31年春 午前問38 解説付き過去問

問題

パスワードクラック手法の一種である、レインボー攻撃に該当するものはどれか。

正解

解説

この問題は、パスワードクラック手法の一種である「レインボー攻撃(レインボーテーブル攻撃)」の具体的な内容を問うものです。以下の手順で解説します。

  1. パスワードとハッシュ関数の関係
  2. システムでは、パスワードをそのまま保存するのではなく、ハッシュ関数を用いてハッシュ値に変換し、その値を保存するのが一般的です。
    ハッシュ関数は一方向性を持つため、ハッシュ値から元のパスワードを直接復元することは困難です。

  3. レインボー攻撃の仕組み
  4. レインボー攻撃は、あらかじめ多数の平文パスワードとそれに対応するハッシュ値を計算しておき、チェーン(連結構造)によって圧縮・整理したテーブル(レインボーテーブル)を作成する手法です。
    攻撃者は、不正に入手したハッシュ値に対してこのテーブルを参照することで、対応するパスワードを高速に割り出すことが可能になります。
    この攻撃は辞書攻撃の一種ですが、ハッシュと平文の直接対応表を持つのではなく、計算量と保存容量を抑えるためにチェーン構造が用いられています。

  5. 他の攻撃手法との違い
  6. レインボー攻撃と類似するが異なるパスワードクラック手法には以下のようなものがあります。

    • パスワードリスト攻撃:他サービスから漏洩した利用者IDとパスワードの組を利用してログインを試行する。
    • 総当たり攻撃(ブルートフォース攻撃):すべての文字列の組合せを試行することでパスワードを推測する。
    • ソーシャルエンジニアリング:利用者から個人情報を聞き出してパスワードを類推する。

したがって、レインボー攻撃に該当するのは、平文のパスワードとハッシュ値をチェーンで管理するテーブルを用いて、ハッシュ値からパスワードを解読する手法です。