取消链接上传的tmp文件的安全性(PHP)

时间:2014-08-28 07:01:40

标签: php file file-upload upload unlink

我在图库脚本中找到了这段代码。 (我已经简化了一点。)

if (
        !eregi("\.(gif|jpeg|jpg|png)$", $input_files['name'][$i])
        ||
        (!is_uploaded_file($input_files['tmp_name'][$i]))
        ||
        intval($input_files['error'][$i])
        ||
        !intval($input_files['size'][$i])
        ||
        !in_array($input_files['type'][$i], array('image/gif','image/jpeg','image/jpg','image/pjpeg','image/png','image/x-png'))
        )
{
    @unlink($input_files['tmp_name'][$i]);
}

$ input_files是发布到脚本的文件数组。

脚本在循环中检查扩展,上传错误,文件大小等。

但在这种情况下取​​消链接tmp文件是不安全的? 如果文件不是上载文件,则tmp_name值可以包含任何可能的路径。

0 个答案:

没有答案