この記事は「脆弱性"&'<<>\ Advent Calendar 2015」23日目の記事です。 ブロック暗号モードのひとつであるCBC modeには、Padding oracle attackと呼ばれる攻撃手法が存在することが知られている。 これは、繰り返し復号を行うことができ、かつ復号の成否が観測可能なとき、バイトごとのブルートフォースにより暗号文が復元できるというものである。 ここでは、実際に簡単なコードを用いてこれを確認してみる。 環境 Ubuntu 14.04.3 LTS 64bit版、Ruby 1.9.3 $ uname -a Linux vm-ubuntu64 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux $ lsb_re