2011-02-09 138 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