相关疑难解决方法(0)

阻止人们通过表单上传恶意PHP文件

我有一个在我的网站上用PHP创建的上传表单,人们可以上传一个zip文件.然后提取zip文件,并将所有文件位置添加到数据库中.上传表单仅供人们上传图片,显然,文件在zip文件夹中我无法检查文件被提取之前要上传的文件.我需要一段代码来删除所有非图像格式的文件(.png,.jpeg等).我真的很担心人们能够上传恶意的php文件,存在很大的安全风险!我还需要注意人们改变php文件的扩展,试图绕过这个安全功能.

这是我使用的原始脚本http://net.tutsplus.com/videos/screencasts/how-to-open-zip-files-with-php/

这是实际提取.zip文件的代码:

function openZip($file_to_open) {
    global $target;

    $zip = new ZipArchive();
    $x = $zip->open($file_to_open);
    if($x === true) {
        $zip->extractTo($target);
        $zip->close();

        unlink($file_to_open);
    } else {
        die("There was a problem. Please try again!");
    }
}
Run Code Online (Sandbox Code Playgroud)

谢谢,本.

php security upload zip

29
推荐指数
3
解决办法
1万
查看次数

标签 统计

php ×1

security ×1

upload ×1

zip ×1