2011-02-09 136 views
8

我已经问过这个问题两次我想,但这是我第一次接近这个。我计划允许用户上传和下载他们的文件(.pdf,.doc,.exl,.ppt,.png,.jpg,.gif)。安全的PHP文件上传脚本

将这些提示是足够了:

http://blogs.sans.org/appsecstreetfighter/2009/12/28/8-basic-rules-to-implement-secure-file-uploads/

此外,有没有一个剧本,我可以利用,我是新来的PHP。

+1

什么脚本?我所看到的只是适当处理的一些规则。 – 2011-02-09 20:58:26

+0

对不起,意思是教程。 – AAA 2011-02-09 21:02:26

+1

提示看起来对我来说很好,有些取决于你的特定要求\ setup – 2011-02-09 21:19:58

回答

3

这里有一百万个文件上传脚本。 This one并不比其他人差。

尽管上传png以外的文件的“保护”不起作用(它只会检查文件的名称)。

上传文件是相当安全的 - 它为其他人提供了下载它们的机会,可以让您的服务器进入某些类型的攻击。你引用没有提到两个要点的文章:

  • 从来没有为来自同一个域提供的文件,你的网页任何用户。有一个单独的域下载。这种方式即使有人设法上传Flash动画或HTML片段,您的域名也不会遭受跨域攻击(例如,如果您的应用程序拥有example.org域名,则应该从下载服务中提供用户内容。 example.com);
  • 总是提供具有良好控制标题的上传文件。
8

对于未来的读者,谁也新的PHP:

读数https://stackoverflow.com/a/7065880/1815624在瑞奇的回答中提到的指导,其中提到一个很好的指导,是挑衅推荐读我会建议先阅读这个答案之前:

https://security.stackexchange.com/a/32853/31943

然后读取由瑞奇提到的导向在:

http://blog.insicdesigns.com/2009/01/secure-file-upload-in-php-web-applications/

毕竟,如果您需要进一步的安全性,您应该考虑断开与互联网的连接。 :P