iidaの日記: Lucky Thirteen attack on TLS CBC
日記 by
iida
このページによると、TLS 1.1, 1.2などの設計に脆弱性が発覚し、OpenSSLはじめ各種実装のベンダーが開発中の模様 (詳細の論文)。
TLS 1.1, 1.2のほか、D(データグラム)TLS 1.0、1.2の設計、パディング・オラクル攻撃に対抗したSSLv3やTLS 1.0の実装も脆弱という。
TLS、DTLSの暗号法 (ciphersuite) のうち、CBC (暗号ブロック連鎖) モードを使ったブロック暗号が対象。
基本的に、実装ではなく、設計に問題があるため、あらゆる実装が脆弱性を内包するものと推察される。OpenSSLでは全平文の解読が可能で、GnuTLSでは、ブロックの最後の4ビットまでの平文の解読が可能という。NSS、PolarSSL、yaSSL、BouncyCastle、OpenJDKも脆弱だという。ソース・コードの公開されていない製品は、まだ調査されていない。
対抗策は
- CBCモードの復号に乱雑な遅延処理を挿入する
- RC4の暗号法を使う
- AES-GCM (ガロア・カウンタ・モード) の暗号でメッセージ認証コードをAEADにした暗号法を使う
- CBCの復号で時間のサイド・チャンネルが出ないようにする
ということらしいのだが、まあ、ふつうはRC4を使うことになるんだろうか。
攻撃には、8百万から少なくとも8192セッションを使うらしいので、もし本当に攻撃されれば、きっとすぐ分かるのだろう。
- - - - -
(P.S. GnuTLSは、既に3.1.7, 3.0.28, 2.12.23をリリース済み。OpenSSL 1.1系は、RFC 5288で規定されているTLS 1.2の暗号法で、AES-G/CM + AEADの組合せ (というか内蔵?) をサポートしている模様。)
(PS 本家)
Lucky Thirteen attack on TLS CBC More ログイン