2011-03-14 140 views
1

我目前正在查看一個網站,因爲網絡釣魚的目的而被黑客入侵。顯然,一個PHP文件被引入並用於上傳文件並可能改變目錄權限。我懷疑這是通過公共可寫目錄或通過不安全的圖像上載腳本完成的。保護網站

我可以採取哪些措施使網站儘可能安全?

+0

不知道你安裝任何東西,我們不能幫你。你需要更具描述性。你爲什麼認爲有一個公共可寫目錄?這個不安全的圖像上傳腳本在哪裏,它的源代碼是什麼?你的日誌說什麼?最後......你運行WordPress嗎? – Brad 2011-03-14 15:22:20

+1

http://serverfault.com/questions/218005/my-servers-been-hacked-emergency – Trufa 2011-03-14 15:22:27

+0

這是一個很長的話題,但是,要開始,請查看訪問日誌。您可能從那裏發現惡意上傳... – NemoStein 2011-03-14 15:23:12

回答

3

最重要的一步是將代碼恢復爲備份。攻擊者可以創建任何後門以供將來使用。您的http_access日誌可能會告訴您原來的入侵點。

另請檢查您的虛擬主機使用的文件權限。在很多情況下,這個漏洞並不在於頁面本身,而是託管公司不會分隔不同客戶的空間(所以它可能會從同一個虛擬主機上的其他客戶傳播)。

+0

這個IMO不完整,你不知道漏洞在哪裏開始,什麼是恢復而不改變任何東西? – Trufa 2011-03-14 15:26:10

+0

我沒有說這是**唯一的**步驟,是嗎?在同一句話中,我寫下了什麼是重點:消除可能比原始漏洞隱藏得多的額外後門。 – vbence 2011-03-14 15:27:26

+0

夠公平的,我還是不認爲這有幫助(不是你的錯,而是問題)。 – Trufa 2011-03-14 15:30:14

1

這個問題被標記爲PHP,所以我假設你的服務器端語言是PHP。這也是一個相當普遍的問題,但有些建議是

  1. 如果只圖像文件是爲了上傳驗證文件有一個有效的圖像擴展名和MIME類型,使用和getimagesize()。即使您不接受只有圖像文件,也會根據允許的擴展名和類型的白名單檢查擴展名和MIME類型。另外,當您使用move_uploaded_file時,請選擇您自己的名稱和擴展名。

  2. 通過將上傳目錄保持在Web根目錄之外並檢查文件請求所依賴的任何數據,確保無法請求任意文件。

有更多的信息here