サイバーセキュリティ分野における初の国家資格「情報処理安全確保支援士」制度が始まりました。資格試験の受験を検討している人も、そうでない人も過去問題にチャレンジしてみましょう。今回は、「POODLE(プードル)攻撃」についての問題です。

問 POODLE(CVE-2014-3566)攻撃の説明はどれか。

ア SSL 3.0のサーバプログラムの脆ぜい弱性を突く攻撃であり、サーバのメモリに不正アクセスして秘密鍵を窃取できる。
イ SSL 3.0を使用した通信において、ブロック暗号のCBCモード利用時の脆弱性を突く攻撃であり、パディングを悪用して暗号化通信の内容を解読できる。
ウ TLS 1.2のプロトコル仕様の脆弱性を突く攻撃であり、TLSの旧バージョンにダウングレードして暗号化通信の内容を解読できる。
エ TLS 1.2を使用した通信において、Diffie-Hellman鍵交換アルゴリズムの脆弱性を突く攻撃であり、交換されたセッション鍵を窃取して暗号化通信の内容を解読できる。

 POODLE(Padding Oracle On Downgraded Legacy Encryption)攻撃は、SSL 3.0プロトコルの脆弱性を突く攻撃のことです。2014年に報告されました。SSL 3.0による暗号通信の内容を解読されるおそれがあります。

 TLS1.0やTLS1.1プロトコルを使っている環境でも、実装に不備があると、POODLE攻撃が可能です。

 影響を受けるのは、CBCモードのブロック暗号を使っている場合です。CBCモードを利用したブロック暗号方式では、ある一定の長さのブロックごとにデータを区切って暗号化します。このため元のデータの長さによっては、最後のブロックに空白ができてしまいます。この空白は、パディングデータと呼ばれるデータで埋めます。

 SSL3.0プロトコルの場合、このパディングデータの検証が不十分であるために、通信内容を解読されるおそれがあることが判明しました。同じ暗号化メッセージをユーザに複数回送信させることで、その内容を1バイトずつ解読できる可能性があります。

 TLSプロトコルは、パディングデータの値を検証する仕様になっているので影響はありません。ただし、仕様どおりに実装していない場合には、影響を受けるおそれがあります。実際、TLS1.0/1.1の実装に不備がある製品では、影響を受けることが確認されています。