2011-11-13 33 views
14

黑客(或其他人)可以上傳/寫入一個php文件到我的網站上有chmod 777的文件夾嗎?人們可以寫一個.php文件到我的chmod 777文件夾

實施例:

我已經搭配chmod 777 即文件夾中包含的圖像的文件夾。 我使用.htaccess來阻止索引文件夾。

改革後的問題: 人們可以通過在他們的網站上使用PHP腳本,將一個.php文件寫入到我的文件夾,該文件夾具有chmod 777嗎?例如,要列出所有的圖片文件夾中

(我熟悉正確的CHMOD上傳文件夾等,只是要求它hypotheticaly)

+0

你是怎麼編輯Aurelio的? –

+0

[標籤](http://stackoverflow.com/posts/8115159/revisions) – SLaks

+0

Ahaaa,不知道那個「修訂工具」thx! :) –

回答

16

機器的任何合法用戶都可以將.php文件或其他任何他們想要的文件寫入該廣泛打開的目錄。 A 777目錄在共享主機上幾乎沒有位置。 (/tmp有時可能1777,設置該目錄的粘滯位 - 只允許一個文件所有者刪除文件目錄通常情況下,777意味着任何人都可以刪除目錄中的所有文件,但/tmp具有絕對。在共享主機環境中失寵,因爲它本質上是不安全的。)

所以:你是機器上唯一的用戶嗎?或者這臺機器與其他人共享?此機器除了Web服務器之外還運行其他任何服務嗎?如果是這樣,那些其他服務也可能代表一個可能的攻擊媒介。

此外,如果您的目錄上的權限設置爲777我不知道您運行的PHP文件的安全性如何 - 我見過許多人運行不安全的PHP腳本,允許攻擊者修改每個整個網絡服務器上的HTML文件,以感染瀏覽網站的用戶。 (是的,很多,超過一小撮)

這就是爲什麼無論您的Web服務器運行的用戶帳戶都不應擁有網站的任何文件 - 靜態頁面和動態頁面。 Web服務器應該只有足夠的寫入權限才能寫入它的access.log,error.log,並與數據庫服務器交談。任何additional privileges beyond this都會使您的某個腳本中的其他良性錯誤變得容易成爲一種可利用的漏洞,使您的站點可用於攻擊他人。

777是一個壞主意。修復。確保您的Web服務器不具有任何Web內容的寫入權限。確保服務器上沒有其他服務具有對您的Web內容的寫入權限。確保服務器上沒有其他用戶對您的Web內容擁有寫入權限。

更新

這是很容易,它的聲音。創建一個新的webcontent用戶。如果您的Web服務器已經擁有一組,請使用它並將其稱爲webgroup。如果還沒有,請創建一個新的webgroup。 (adduser(8)addgroup(8)如果你的VPS沒有自己的機制。)然後設置所有者爲您的所有網頁內容:

chown -R webcontent:webgroup /path/to/web/content 

修復權限:

find /path/to/web/content -type d -print0 | xargs -0 chmod 750 
find /path/to/web/content -type f -print0 | xargs -0 chmod 640 

然後確保你的Web服務器使用Group webgroup指令來確保它仍然可以讀取它需要的所有文件。

這將讓你的網絡服務器有讀取訪問所有的腳本和配置,但如果Web服務器本身被黑客攻擊,它不能修改任何它。

+0

假設我在VPS上。所以我是(虛擬)機器上唯一的用戶。 –

+0

Web服務器是VPS上唯一的服務嗎?你相信你的腳本多少錢? – sarnold

+0

我是否正確地認爲執行最後一段並不像聽起來那麼簡單? –

7

如果你的代碼是共享服務器或上服務器上有其他服務,其他本地用戶可能會寫入您的目錄(如果其他用戶能夠下載到父目錄中)。

您需要的不僅僅是每個人都可讀寫的目錄(777)以獲得黑客攻擊。使用權限777通常表示對安全性功能的理解很差(或者在需要重新分配代碼時懶惰,並且作者不希望通過向腳本的用戶解釋文件權限來使其過於困難)。

12

有(至少)三種方式的人可以寫你的目錄:

  • 如果他們對服務器的本地控制(通過終端EG)
  • 如果你的服務器支持,並允許PUT HTTP方法
  • 如果你有一個腳本,讓人們上傳文件到該目錄

只要你不公開的可寫WA暴露的文件夾y,沒有人可以遠程修改文件夾的內容。這與本地權限無關。您設置的本地權限允許服務器的任何本地用戶在此文件夾中讀取,寫入和執行 - 但這並不意味着遠程攻擊者可以。

話雖如此,請避免777權限,除非絕對必要/安全。

+0

我並沒有完全理解這一部分:「只要你不公開以可寫的方式公開文件夾,沒有人可以遠程修改文件夾的內容」 –

相關問題