2013-03-22 59 views

回答

3

一般来说,允许用户上传任何可能以某种形式执行的文件(无论是二进制文件还是脚本文件)是非常危险的。根据用户的需求,可能有安全的方法。

只要用户不需要执行.SWF而只是存储它们,只需在文件位于服务器上时从文件中删除可执行位即可。这样文件不能在你的服务器上执行。

有些事情,你将不得不解决虽然是用户上传一个是针对其他用户,而不是你的服务器的恶意SWF文件。即使您删除了可执行的位,用户仍然可以诱骗其他用户下载并执行存储在服务器上的SWF。要解决这个问题,你应该坚持让用户登录来访问他们的文件,或者至少是SWF文件。这种方式没有一个有效的会话有人无法访问它。

这些文件不被服务器执行是非常重要的。 Flash因漏洞而臭名昭着,您不希望被上传恶意SWF的用户执行到您的服务器。

+0

是的,我想要用户上传和“播放”他们,我看到一些网站做它,但如果像你说的是不是100%安全,我会找到替代方案。谢谢 – Tahola 2013-03-22 23:48:32

+1

这是一项很多工作,但您可以做的一件事就是将上传的文件传输到沙盒系统中并播放。然后根据视频输出重新录制它。然后你是生成文件的人,你知道没有恶意。如果文件是恶意的,它会影响你的其他机器,而不是你的服务器。在另一台机器上使用虚拟机,并在每次尝试后擦干净。就像我说的那样做很多工作,但这会为您的安全带来奇迹。 – 2013-03-22 23:57:14