在php中上传文件时防止任何破坏

时间:2015-03-16 13:40:13

标签: php security file-upload

如您所知,有一种简单的常规方式可以在php上传文件。 为了安全检查我只检查文件及其type的{​​{1}},但这还够吗?如果答案是否定的,我该怎么办才能防止破坏? 对于exaple来说就足够了:

size

php:

<form action="php-ajax-upload.php" method="post" enctype="multipart/form-data" target="upload-target" onsubmit="upload_start();">
<label for="user-file"></label>
<input type="file" id="user-file" name="user-file" />
<input type="submit" value="Upload" />
</form>

1 个答案:

答案 0 :(得分:0)

是的,您需要检查类型,以便最终用户不会上传恶意PHP文件。此外,您可以保护自己免受洪水侵袭,例如,我可以编写一个程序来访问您的网站并一次又一次地上传图像,直到您的硬盘驱动器被填满。您可能希望跟踪IP地址并检测泛滥尝试。此外,您可以在表单中添加验证码以防止泛滥。您需要确保在文件名中不允许使用撇号和类似内容,因为它们可能是注入攻击的一部分。