发布于 1970-01-01 08:00
  • 3 个回答
    • 用户发过来的就这些东西,除了解析二进制文件你没别的办法了,即便是解析二进制文件其实也有可能受骗,可以拿来越狱iPhone的PDF都曾经存在过。

      很多事你没法做到绝对,一句话,尽人事安天命吧。

      2022-12-01 11:53 回答
    • 如果是图片可以通过 getimagesize() 获取图片的 mime,这样便不依赖
      普通文件可以通过:
      1. finfo 扩展
      2. mime_content_type()
      3. 调用linux命令 exec("file -bi ".escapeshellarg($this->file_src_pathname))来检测
      选择合适的一种检测文档类型已经够用了。
      图片上传的安全性主要在下载展示的时候,如果它是一段脚本<script>alert(1)</script>伪造成image/jpg,浏览器会将其解释为html而不是图片,从而执行非法脚本。以上检测手段可以避免这种情况

      2022-12-01 11:53 回答
    • 最简易又相对比较安全的方法是验证文件的signature信息了。

      PHP参考:http://www.codecto.com/article/4.html

      2022-12-01 11:53 回答
    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有