Cache Attacks and Countermeasures: The Case of AES

  • Dag Arne Osvik, Adi Shamir and Eran Tromer, Cache Attacks and Countermeasures: The Case of AES, Topics in Cryptology – CT-RSA 2006

CPUのキャッシュのサイドチャネルを使って、AESの鍵を見つける、という攻撃。
AESの処理の大部分は table lookup なので、キャッシュの使われるパタンを利用して、細かくメモリのどの部分が読まれているかというのを調べて行くと、AESの鍵が分かるらしいです。

先日読んだ ACM CCS 2009 の Amazon EC2上でのサイドチャネル攻撃についての論文 の中でも参照しています。ACM CCS 2009 の論文では同じキャッシュのサイドチャネル攻撃でも、VMの負荷やネットワーク負荷などの粒度の荒い情報しか検出していませんでした。
VMM上ではまた別の要因がからんでくるので、このRSA 2006 の論文と同じ攻撃を実行するのは困難、というようなことが書いてありました。が、キャッシュのサイドチャネル攻撃で暗号鍵の検出ができるほどの粒度が出せるというのは、さらに重大な攻撃の可能性を示唆していると思います。

なおこの攻撃の対策として、某社のHWで、AESの専用ハードウェアを使って、AES暗号の処理がメインのCPUキャッシュを使わないようにしたらしいです。