Apache-2.2
unix 惡意腳本/ksh 執行
我想知道我的架構是否會帶來安全風險。細節:
- 整個網站不是 ROOT 擁有的,但使用的 APACHE 使用者仍然擁有一些非常高級的權限。
- 我有一個文件夾“user_files”,可以保存任何類型的使用者文件。例如,一個 ksh unix 文件。
- 我的 php.ini 禁用了 exec php 功能(以及其他一些敏感功能)
我的問題很簡單,但有兩個方面:
- 有人可以執行上傳的腳本嗎?
- 風險的大小是多少?如果腳本由 apache 執行,我猜它最多可以刪除伺服器的所有 apache 擁有的文件,對嗎?
您禁用 php 的 exec 函式可能有助於阻止 php 腳本呼叫其他腳本,例如您描述的 ksh 腳本。但是,除非您禁止使用者上傳 php 腳本,否則他們可能會從 php 呼叫破壞性功能(除非您也禁用了所有這些功能)。
如果您可以禁止 apache 為 users_files 目錄解釋所有動態腳本,您可能會更安全,但請禁用您希望為使用者提供的一些功能。
根據您的發行版以及您喜歡安裝和維護的軟體,我可以想到一種選擇。
啟用 Apache 的 suEXEC 功能,以便任何非 php 和其他 mod_language 腳本在另一個使用者帳戶下執行。通過 cgi 界面使用 php,如果您可以獲得 php-fpm,則可以更輕鬆地以單獨的使用者身份執行某些腳本。