【问题标题】:how to verify a file's content is match to it's extension如何验证文件的内容是否与其扩展名匹配
【发布时间】:2021-02-08 07:40:41
【问题描述】:

我的网站允许上传 [txt,csv,pdf,xlsx,xls,doc,docx,mp4...] 文件。 为了防止恶意攻击,我不希望 [exe,bat...] 上传伪装成上述的文件。 如何验证我网站上上传文件的内容和扩展名是否正确。

【问题讨论】:

  • 我猜你需要不同的库来检查每种文件类型。尝试使用正确的库读取 xls 文件,如果没有失败,则内容对其扩展名是正确的。对任何其他扩展执行相同操作。
  • 如果恶意攻击是您唯一的问题,您可以使用在线病毒扫描程序 api 扫描文件,然后再传输到您的服务器

标签: java


【解决方案1】:

在 Linux/Unix 系统上,file command 检查文件并决定文件类型。在您的情况下,我会尝试重用该逻辑,而不是自己实现某些东西。

我不确定该命令在 Windows 上是否可用。您可能想通过Cygwin 获取它或自己编译它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-13
    • 2021-04-20
    相关资源
    最近更新 更多