0

我正在一个网站上工作,该网站有一个由 HTML5 构建的“工作订单表单”,客户端验证使用 polyfill 库(webshims)和 php 进行服务器端验证。

客户希望用户能够在表单完成过程中上传文件(各种媒体,例如 .doc、.psd 甚至 CAD 文件)。由于数据经过处理,然后邮寄到客户的电子邮件地址,我也可以以某种方式附加文件吗?我对使用 MySQL 不太熟悉,所以我想知道创建它会有多困难。

我认为我的服务器只允许最大上传 100mb(根据 phpinfo),我相信客户的最大文件传输到他们的收件箱大约是 20-40mb。

为文件上传创建服务器端验证功能是否很难?感谢您的反馈意见!

4

1 回答 1

2

创造一个难吗?不。很难创建一个真正安全的服务器,确定黑客不会使用它来接管您的服务器吗?是的。

我强烈建议您在允许客户端将文件上传到服务器之前,详细研究如何安全地执行此操作。在我的公司,我们确定风险太大。允许未经审查的人将内容上传到您的服务器只是要求某人在图像文件的元描述部分中嵌入病毒,或者溢出 PDF 上的缓冲区,或者他们在最后提出的任何其他技巧星期。您可以尝试阻止您知道的那些,但他们总是想出新的方法。

我所知道的最好的解决方案是使用允许通过它们进行上传的第三方服务。在完全检查文件之前,这些文件不会到达您的服务器。下一个最佳解决方案是为您自己的服务器购买一项服务,为您进行验证。这与普通计算机防病毒软件的工作方式相同,但您要确保用户通过此服务提供的内容上传,而不仅仅是通过您自己的代码。之后是你所要求的并编写你自己的验证器,这是最便宜的解决方案,但也是最危险的。请记住,您在网上找到的任何安全建议,黑客也可以找到。

于 2014-01-30T19:06:09.190 回答