[Codeigniter-users] [注意喚起] 1.7.0以前のファイルアップロードクラス

Back to archive index

Kenji kenji****@club*****
2009年 7月 9日 (木) 22:19:54 JST


Kenji です。


1.7.0 以前のファイルアップロードクラスは、アップロードされた
ファイルの中身を全く検証していません。

http://codeigniter.jp/user_guide_ja/libraries/file_uploading.html
にあるサンプルコードの場合、攻撃者は、uploadsフォルダに任意のファイルを
アップロードできます。これは、ブラウザからアクセスできる領域に PHP
ファイルをアップロードすることが可能ということで、任意のコードをサーバ上
で実行できることになります。

1.7.1 では、画像ファイルについて getimagesize() で画像ファイルかどうか
検証するようにチェックが強化されていますので、画像ファイルに関しては、
このような脆弱性のあるコードを書いてしまうことはありません。

ただし、画像ファイル以外のファイルをアップロードする場合は、必要な場合は、
自分でファイルの中身をチェックするなどの対応をする必要があります。


なお、1.7.1 では、画像ファイルと画像以外の両方をアップロード可能にしようと
設定すると、画像以外のファイルがアップロードできないというバグが報告されて
います。
http://codeigniter.com/forums/viewthread/113029/


// Kenji




Codeigniter-users メーリングリストの案内
Back to archive index