我在000webhost上有一個PHP/MySQL網站(http://www.boisvert.me.uk;但現在正在審查中),我擔心它的安全性。我想要做的事會讓任何網站變得脆弱;這是PHP爲兒童提供尖銳的剪刀的等同物。我對減少網站漏洞有各種各樣的想法,但更多的建議是值得歡迎的。PHP/MySQL安全問題
特別是,有兩個腳本:
上載腳本。其目的是允許註冊站點用戶上傳某些XML文件(教程)。很顯然,要做到這一點,網站上的一個文件夾可以爲訪問者提供寫入權限。我不喜歡那樣,但我沒有看到解決辦法,我可以在腳本中添加檢查(類型,大小),以確保上傳的文件僅限於XML和一些圖像。有沒有其他要點可以改進?
腳本2是PHP的解釋器 - 用戶可以在表單中輸入PHP並執行(不保存)。我希望用戶可以嘗試訪問數據庫,因此粗略的字符串替換可以確保我不需要泄露MySQL訪問信息。但是攻擊者可以使用這個解釋器來訪問文件區域並上傳不受歡迎的材料。我的解決方案是將解釋器放在一個單獨的域中,其中沒有文件可以上傳。
任何意見,以改善這一點是值得歡迎的,酒吧「不要這樣做」。我知道這很危險。所以過馬路。謝謝你的幫助。
沒有冒犯,但第二點聽起來更像是「越過高速公路」:)如果它是可公開訪問的,那麼您將服務器置於非常危險的狀態。單獨的*域*不會保護您,因爲PHP的用戶可能有權訪問服務器上的其他網站。見例如[可利用的PHP函數](http://stackoverflow.com/q/3115559) – 2011-05-13 08:20:49
這是一種什麼樣的目標受衆?這是一個有幾十名學生的小型大學課程,還是完全公共服務? – 2011-05-13 08:39:08
我本來喜歡它是公開的,基於下面的答案它不會。 – boisvert 2011-05-13 09:01:02