0

CakePHPのセキュリティに関するこの非常に興味深い投稿を読んだばかりです:Cakephpセキュリティ

ヘルパーが使われるときはいつでも、私が逃げ出さない限り、CakePHPは基本的にセキュリティリスクを処理すると言っています。リンクを画像にしたい場合にのみエスケープをオフにするので、リンクヘルパーライン内に画像ヘルパーラインをネストします。例えば:

echo $this->Html->link($this->Html->image('logo.png'), "/" , array('id'=>'logo', 'escape' => false));

それは悪い習慣ですか?それは私を無防備にしますか?私はそれを他の方法でやるべきですか?

さらに、動的ページにデータベースデータを出力するときは常に、htmlspecialchars($ myvariable)で囲む必要があるというのは正しいですか?データベースが「悪いもの」からクリーンであり、データベースに入力するためのすべてのフォームがFormHelperを使用していることがわかっている場合、なぜそれを行う必要があるのか​​わかりません。

4

1 に答える 1

1

示されているコード例では、すべて静的な値があり、ユーザーからのコンテンツがないため、リスクはありません。

同様に、データベースからのコンテンツについても同様です。すべてのコンテンツはサイト管理者によって管理され、ユーザーからのコンテンツはデータベースに保存されないため、エスケープせずにコンテンツをエコーし​​ても安全です。

于 2012-09-17T12:00:28.447 に答える