要約
- WPA2の4ウェイ・ハンドシェイクでは、メッセージ4が届かなければアクセスポイントがメッセージ3を正当に再送する。脆弱な端末は、そのコピーを同じセッション鍵の再インストール命令として扱った。
- Wi-Fiパスワードや合意済みの鍵が盗まれたわけではない。鍵に付随するパケット番号とリプレイ状態が初期化され、本来は一方向に進む安全状態が巻き戻された。
- 修正は再送を禁止しない。再送されたメッセージ3には応答してよいが、新しい鍵をインストールできるのは一度だけ、と実装側で制約する。
4ウェイ・ハンドシェイクは、信頼できない無線媒体の上で確実に処理を終える必要がある。アクセスポイントがメッセージ3を送り、端末が鍵を設定してメッセージ4を返す。最後の応答が消えたとき、アクセスポイントには処理が成功したか分からない。そこでメッセージ3を再送する。これは異常ではなく、損失に耐えるための正常系である。
問題は端末側の解釈にあった。Mathy VanhoefとFrank PiessensがCCS 2017で示した攻撃では、無線範囲内でチャネル型の中間者となった攻撃者がメッセージ4を遮り、再送された本物のメッセージ3を被害端末へ届ける。暗号学的に偽物ではないため、端末が受理すること自体は間違いではない。一部の実装は、そのたびに既に使っている鍵まで設定し直した。
鍵のインストールには副作用がある。送信パケット番号であるnonceや、受信側のリプレイカウンターが初期値に戻り得る。同じ鍵が同じnonceと再び組み合わされれば、暗号が前提としていた一意性が崩れる。鍵は秘密のままで、認証相手も変わらない。それでも、鍵の周囲にある時系列が壊れれば、再送、復号、条件によっては偽造への道が開く。
したがって「WPA2のパスワードが破られた」という説明は正しくない。パスワード変更は対策にならない。影響も一様ではない。原論文では、CCMPの場合に再送と復号が可能になる一方、任意のWi-Fiフレームを直接偽造できるとはしていない。TKIPやGCMPでは偽造まで可能になる場合がある。TCPやHTTPへの注入には、さらに適した通信と操作が必要になる。
LinuxやAndroidで使われた一部のwpa_supplicantには、再インストール時に全ゼロの一時鍵を設定する深刻な挙動もあった。これは目を引くが、すべてのWPA2端末に共通した現象ではない。最悪例だけで全体を語ると、暗号方式、方向、ハンドシェイクの種類、実装という切り分けが失われる。
この事件は、形式検証の射程も明らかにした。研究者らが参照した証明は鍵の秘匿性やセッション認証を扱っていたが、合意した鍵をいつインストールするか、その処理が二度起きたらどうなるかをモデル化していなかった。証明されたプロトコルと、動いている状態機械の間に、ひとつの実行イベントが残っていたのである。
中心となる対策は簡潔だ。メッセージ3が再送されたなら、メッセージ4をもう一度返してよい。しかし、同じセッション鍵を再びインストールしてはならない。既に使用した鍵を設定してもカウンターを初期化しない方法と、各ハンドシェイクで新しい鍵のインストールを一回だけ許す方法がある。
この変更は電波上の形式を変えない。修正済み端末と未修正アクセスポイントも通信を続けられる。再送も応答も残し、不可逆な状態遷移だけを一回に絞るからだ。全参加者の同時更新を待たず、各実装が局所的に安全境界を強化できる。
ただし、修正対象は一つの関数では終わらなかった。CERT/CCのVU#228519はCVE-2017-13077以降の一群を整理し、ペアワイズ鍵、グループ鍵、高速遷移など複数の経路を示した。hostapd/wpa_supplicantの告知は、端末、AP、802.11r、再鍵交換、ドライバー、ファームウェアを分けている。Androidも2017-11-06のパッチレベルを設定しつつ、チップメーカーの修正が別途必要な場合を明記した。
2018年の追跡調査では、確認した多くのベンダーが修正を配布していた一方、残存バグと影響の小さいグループ鍵の回避策が見つかった。これは公表日や版番号だけでは不十分で、製品上の状態遷移を繰り返し試験する必要があることを示す。
KRACKが残した一般則は明快である。メッセージの真正性は送信者を証明するが、同じ命令を何度実行しても安全だとは証明しない。
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加
