通过Grails保护文件上传

时间:2015-03-26 00:17:42

标签: grails file-upload

您在Grails中实施的建议提示和技巧有哪些,以确保通过<input type="file" ....>在公开网站上传的文件危害最小?我正在考虑使用contenttype来确保只允许上传Word或PDF文件。但我不确定如何阻止带有可执行信息的Word或PDF文件上传?我们可以使用任何额外的过滤吗?

1 个答案:

答案 0 :(得分:1)

您可以使用例如:

<input type="file" maxlength="5242880" accept="application/pdf"/>

在上传操作中,您可以使用(ClamAV)扫描病毒。

但这导致了另一个问题。如果上传者将任何文件重命名为&#34; .pdf&#34;它也可以上传。 contentType还返回&#34; application / pdf&#34;即使文件不是真的。

解决方案: 您必须阅读文档的第一行并检查它是否以&#34;%PDF&#34;开头。如果您打开PDF,例如使用Sublime Text Editor,您可以看到它。