作者: ねこ丸
日時: 2007/9/21(20:33)
  ねこ丸です。

閑舎 writes:

> カウンタなんかでちょっと問題が出そうですし、最近、アルバム機能を売り物に
> するブログサイトなど増えているので、画像をアップロードしていろいろ処理す
> るのも以前よりはかなり増えてきてますよね。
> 
> # GD でデフォルトサイズにする、とか言って、サイズ変更してしまえば問題は
> # 消滅するような気はしますが(まさか GD が画像を読みにいくところにすでに
> # PHP の脆弱性があるってなことにはなってないでしょうね?)。

  いやいや。ファイルを開くことそのものが危険なのではありません。普通に
fopen して fread している途中でいきなり PHP のコードとして実行すること
はできないです。だから前回のツッコミで GIF ファイルを include しないで
しょ?と書いたのです。(ユーザーからのパラメータを利用して include する
ファイルを決めるような場合は別ですが、これは今度はアップロードや画像内
への埋め込みとは無関係に危険です。)

  ちなみに、埋め込み方によっては GD で変換しようが攻撃コードを除去する
ことはできません。テキストを保存する領域もありますし。ファイルが安全か
どうかを特定するのは結構難しいですから、要するに得体の知れないファイル
を include, require しちゃダメなんです。


> が、ローカルファイルの html ソース、PHP コード混在ファイルの include を
> 負の遺産とまで言われると、PHP の特色が消えると思うけどなぁ。まあ、注意は
> 必要だし、レンタルサーバなんかやってる人には厄介とは思うけれど。

  いやぁ。負と言っていいと思います。PHP 以前はこれをはっきりと言えるよ
うな軽量かつ強力で一般に普及した処理系がなかったのでよく分からなかった
だけで、普及してみたらアレコレ問題あるね、って分かるようになったってこ
とだと思います。PHP にはそういう便利機能が多いので叩かれるんだけど、先
駆者としての功績は大きいと思いますよ。ど真ん中で使ってる人にはつらいで
すけど。

--
    ねこ丸