リプレイ攻撃とは?りぷれいこうげき
リプレイ攻撃とは、通信を記録しておき、中身を解読しないまま同じ電文を送り直して正規の利用者になりすます攻撃。鍵を持たない相手でも成立するため暗号化は対策にならず、防ぐ側は電文を一度きりしか通用しないものにする必要がある。チャレンジレスポンス方式やナンス、時刻印がその役を担う。
最終更新:2026-10-06
この語が出る過去問を解く →背景
暗号は電文の中身を守るが、その電文が「いつのものか」「使い回しでないか」までは守らない。鍵を持たない攻撃者でも、記録した通信をそのまま流し直すことはできる——秘匿性が保たれていても認証が破れるという、暗号化だけでは埋まらない隙間がここにある。だから設計上は、毎回異なる要素を電文へ混ぜて二度目を無効にするという別の手当てが要る。
具体例
サーバが毎回異なる乱数(チャレンジ)を送り、利用者側がそれを鍵で処理した値を返すチャレンジレスポンス方式にすれば、記録された応答は次回には通らない。時刻を種にするワンタイムパスワードや、サーバ発行のチャレンジへ署名させるFIDO2/WebAuthnの認証も、同じく一回性で再送を封じている。
試験での引っ掛け
「通信を暗号化すれば防げる」は誤りで、中身が読めなくても丸ごと再送はできる。またハッシュ化したパスワードをそのまま送る方式は、ハッシュ値自体がパスワード同然の通行証になるため、この攻撃に対しては平文送信と同じ弱さを持つ。中間者攻撃と混同されやすいが、電文を書き換えず記録して流し直すだけという点が区別の軸になる。
関連用語
出た過去問
出典:令和元年度 秋期 応用情報技術者試験 午前 問38(IPA)解説で登場
チャレンジレスポンス認証方式に該当するものはどれか。
正解:利用者が入力したパスワードと、サーバから受け取ったランダムなデータとをクライアントで演算し、その結果をサーバに送信する。
要点:チャレンジレスポンスは毎回異なる乱数で応答を作り盗聴再利用を防ぐ
チャレンジレスポンス認証は、サーバが毎回異なる乱数(チャレンジ)を送り、クライアントがパスワードと組み合わせて演算した結果(レスポンス)を返す方式です。パスワードそのものはネットワークを流れず、毎回値が変わるため盗聴による再利用(リプレイ攻撃)を防げます。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。