如何检查用户上传的文件是否安全

问题描述:

我是新来的烧瓶。如果以前讨论过这个问题,我的道歉。我想知道如果我的应用程序允许用户上传文件,我如何确保他们上传的文件是安全的,没有病毒或没有威胁到服务器?我应该使用任何特定的防病毒软件来扫描他们的文件吗?或者是否有我应该设置的特定文件夹或文件的任何文件权限。比方说,如果我在Linux上使用Apache作为服务器。我一直在寻找这方面的解决方案,但仍然没有找到明确的答案。真的很感激,如果有任何建议。如何检查用户上传的文件是否安全

+0

这真的很容易。如果你收到一个文件,你如何检查文件是否安全?其实,你的问题没有很好的答案。 – iFlo

+1

谷歌或Facebook等大型互联网公司都有专门的安全团队。这些东西不是问题的解决方式,对服务器的威胁可能会以非常多的形式出现。您可以做的唯一事情就是尽可能地在开发应用程序时考虑安全性,并遵循现代安全性准则。您允许用户使用您的Web应用程序执行的任何操作都会带来安全风险。这个风险有多大取决于你的申请,并且一般来说很难回答。 – Bartvbl

您可以执行SMTP服务器(电子邮件)管理员所做的事情,安装Clamd或类似的防病毒软件,并使用它来分析收到的文件。

在这里你可以找到一个教程在CentOS https://www.centosblog.com/how-to-install-clamav-and-configure-daily-scanning-on-centos/

安装它,你标记你python这里质疑的一个扩展,你可以用它来与蟒蛇clamd的互动,它是正确称为pyClamdhttp://xael.org/pages/pyclamd-en.html

另外,如果没有上传的文件获得+x权限,它将不会被执行,所以你要保护下载文件的用户而不是机器本身,因为这台机器受到Linux系统的保护。