水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > CakePHPガイドブック : 比較演算子インジェクション

CakePHPガイドブック : 比較演算子インジェクション

2009年4月3日(金曜日)

CakePHPガイドブック : 比較演算子インジェクション

公開: 2009年4月5日21時50分頃

CakePHPガイドブック (www.amazon.co.jp)」という本に、耳慣れない「比較演算子インジェクション」という言葉が出ており。著者の方のサイトに「CakePHP 比較演算子インジェクションに注意 (www.1x1.jp)」というお話が。

昔のCakePHPではこんなふうに、「演算子 + 値」を引数として渡すことができるようになっていたそうで。

$list = $this->findAll(array('id' => '> ' . $id));

さらに、演算子が「=」の場合は省略できるので、こう書けます。

$list = $this->findAll(array('id' => $id));

……が、このとき、$id に '!=foo' なんて値が入っていると、その演算子が使われてしまうという罠。なんという罠仕様……。

CakePHP1.2からは、値ではなくキーの方に演算子をつけるようになったとのことです。

関連する話題: セキュリティ

最近の日記

関わった本など