网站通过文档上传会暴露出哪些安全漏洞?

| 我是文档存储空间的新手。我不确定自己正在做什么,但是在开始之前,我想知道一个可能的安全威胁,当允许文件上载以及清理数据的最佳方法是什么时?我正在使用PHP,将允许使用图片,Word文档,PDF,Excel文档等。 这是一个好的解决方案: http://blog.insicdesigns.com/2009/01/secure-file-upload-in-php-web-applications/     
已邀请:
有两个非常明显的: 如果操作不当,文件上传器可能会允许用户覆盖其他人的文件-包括运行该站点的PHP。确保设置了权限,以便Web服务器的帐户具有对任何目录的只读访问权,但应在其中写入内容,并且该目录中的任何内容都不能执行。 用户可以上传(大)个足够的文件来填充站点的磁盘配额。即使他们不能这样做,他们也可以尝试-并且无论如何,在发送完整个文件之后,服务器可能不会拒绝上传til,以消耗宝贵的资源并可能仍然填充驱动器(如果仅在该时间范围内)拒绝请求并删除临时文件)。 这只是服务器的风险。文件中可能包含可能影响其他用户的恶意软件。您可能会想要找到用于该物品的扫描仪。 我建议,如果要让人们上传文件,可以找到许多其他人使用和推荐的预先编写的脚本。当某人做了您从未考虑过的事情时,自己动手注定会给您带来麻烦。     
当允许用户上传文件时,存在大量漏洞。可能会阻止不需要的文件格式,这可能有助于限制某人能够上载Shell并启动服务器的可能性。影响服务器上信息的完整性,机密性和可用性。 您还存在表单控件以及XSS(跨站点脚本)漏洞之类的漏洞,从而使用户可以运行恶意代码。这可能导致恶意代码在用户环境中执行。 实际数据库中的漏洞以及SQL注入也有可能。 只是不要让服务器执行可执行文件... 用户使用重要的磁盘空间和带宽上传大文件会带来风险。 用于保护PHP上传脚本的有用链接:http://www.webcheatsheet.com/PHP/file_upload.php     
您应该注意一些威胁: 恶意软件,如病毒,蠕虫,特洛伊木马等,尤其是如果其他用户可以访问上载的文件时。 可以在您的系统上执行的文件,例如php-files。如果用户可以将php文件上传到您的webroot,则可以使用passthru(cmd)或system(cmd)之类的命令执行任意命令。 非法内容。您不希望服务器上有任何违法的事情引起您的麻烦。 有人可以使用javascript上传HTML文件,将其用于XSS攻击 ... 仅列举其中一些。您应该查看有关无限制文件上传的OWASP网站。您应该在那里找到所需的任何东西。     

要回复问题请先登录注册