Security

我應該更改上傳的預設文件夾嗎?

  • June 7, 2021

PHP 7 使用預設的系統文件夾 (/tmp) 來儲存上傳的文件。PHP 允許您更改設置並更改上傳目標目錄。一些站點指示將此文件夾更改為另一個文件夾,因為 /tmp 權限是 777。

OWASP 在安全建議中沒有列出任何內容。我真的應該擔心將此文件夾更改為另一個文件夾還是沒有風險?

我認為通常不需要更改上傳文件夾,因為

  • 臨時文件的預設訪問模式是 0600,它們歸執行 PHP 程序的使用者所有。這意味著預設情況下其他使用者無法訪問這些文件。
  • /tmp設置了sticky位,這意味著即使它的訪問權限是777,也只有文件的所有者才能刪除任何文件(當然還有root)。
  • 通常伺服器是專用電腦,如今容器和虛擬化更是如此。這意味著可能沒有其他使用者可以在傳輸中查看上傳的文件。
  • 文件只是暫時存在,如果處理文件上傳的腳本退出,文件將被刪除。因此,即使周圍有不受信任的使用者/程序,他們也需要一個競爭條件(可能存在,順便說一句)來訪問文件,並且他們仍然需要克服前面提到的訪問限制。
  • 如果有人未經授權從 Internet 設法訪問您電腦的文件系統,則臨時上傳的文件是您最不關心的問題。

引用自:https://serverfault.com/questions/1065981