欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何判断上传文件是否图片或是否安全

程序员文章站 2022-05-10 17:08:55
...
怎么判断上传文件是否图片或是否安全
怎么判断上传文件是否图片或是否安全
------解决方案--------------------
一般是通过文件名的原始后缀来进行文件上传时候的判别,然后保存后也是对应的类型,至于安全的话只要不是可执行文件基本都算安全,不知道你想问的是啥安全。
------解决方案--------------------
$_FILES["file"]["type"] -- 可以判断上传文件的类型。

至于安全,看你的标准是什么了。
------解决方案--------------------
不可相信任何传入的东西,否则你就要吞食轻信的苦果了
你看看我这张图片怎么样?
$im = imagecreate(1,1);
$color = imagecolorallocate($im, 255, 0, 0);
imagegif($im, '1.gif');
$s =phpinfo();
?>
TXT;
file_put_contents('1.gif', $s, FILE_APPEND);
print_r(getimagesize('1.gif'));
echo '如何判断上传文件是否图片或是否安全';
include '1.gif';

------解决方案--------------------
使用mime_content_type 檢查一下類型
http://php.net/manual/zh/function.mime-content-type.php

我一般會用imagemagick轉一次為圖片的。
------解决方案--------------------
引用:
不可相信任何传入的东西,否则你就要吞食轻信的苦果了
你看看我这张图片怎么样?
$im = imagecreate(1,1);
$color = imagecolorallocate($im, 255, 0, 0);
imagegif($im, '1.gif');
$s =phpinfo();
?>
TXT;
file_put_contents('1.gif', $s, FILE_APPEND);
print_r(getimagesize('1.gif'));
echo '如何判断上传文件是否图片或是否安全';
include '1.gif';


我测试了你的代码,phpinfo()执行了,但是谁会去include一张图片呢?
这样的图片永远不会被执行吧?
如何判断上传文件是否图片或是否安全

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频