日経ネットワーク1月号特集1、
「狙われるセキュリティプロトコル」より。
最近世間を騒がせた、
セキュリティプロトコルの脆弱性について。
○WPA2
攻撃手法:KRACKs(Key Reinstallation Attack s)
内容:無線LANの暗号化キーを解析する
対策:パッチの適用(鍵の再インストールを禁止する)
攻撃の仕組み
WPA2の4wayハンドシェイクに介入し、
暗号化に使用する「ナンス」をリセットすることで、
同じナンスで暗号化したパケットを集め、
それを解析してPTKの手掛かりを得る。
WPA2では、PMKの交換後、
4wayハンドシェイクによってPTK・GTKを生成・交換し、
完了時に、端末にPTK・GTKがインストールされる。
その時、攻撃用のAPが、
メッセージ4(端末→AP)をブロックすることで、
メッセージ4を受信できない正規のAPは、
メッセージ3を端末へ再送する。
メッセージ3を再度受信した端末は、
再びメッセージ4を送信し、PTK・GTKを再度インストールする。
(はじめのメッセージ4送信の時点で、一度インストールしている)
その時、ナンスもリセットするので、
再び、同じナンスを使って暗号化したパケットを送信する。
以上のことを繰り返し行うことで、
同じナンスで暗号化したパケットを集めて解析し、
PTKの手掛かりを得ることができる。
よって、対策としては、
PTK・GTKの再インストールを禁止すること。
PMK、PTK、GTKについてはこちらも参考
http://www.infraexpert.com/study/wireless12.html
○SSL
攻撃手法:POODLE
内容:暗号キーを知らなくても、暗号化通信を解読できる。
対策:TLSへの移行
攻撃の仕組み
AES-CBCの復号処理を利用して、
1文字ずつ解読する。
SSLでは、復号の成否のチェックを、
パディング長の1バイトで判定するため、
パディングのみの最終ブロックを、
他の暗号化ブロックとすり替えて復号したときに、
1/256の確率で成功する。
その時、CBCの復号処理の理論から逆算すると、
すり替えたブロックの末尾の文字が特定でき、
これを文字をずらしながら実施すると、
まとまった内容を解読できる。
TLSでは、復号の成否のチェックを、
パディングの全バイトで行うため、
同様の手順で復号が成功する確率は限りなく低く、
事実上、この手法での攻撃は不可能。