PHP 本身語言層面無重大缺陷,安全風險主要來自應用程式撰寫不當。本文分析 PHP 運作機制衍生的三大風險來源及防範措施。
fopen($file)),攻擊者可讀取敏感檔案 (/etc/passwd, ../../../winnt/repair/sam._)。exec(), system(), passthru(), 反引號)。若使用者輸入未過濾直接拼入命令,攻擊者可注入任意指令 (如 a|reboot, rf -rm /*)。register_globals=On 時,使用者輸入自動成為全域變數,易導致未初始化變數被惡意覆寫。basename()、realpath() 限制路徑。php.ini 設 register_globals = Off,改用 $_GET, $_POST, $_REQUEST 存取。display_errors=Off, log_errors=On。allow_url_fopen=Off。安全非單一設定可解,需結合程式碼審查、伺服器加固、定期更新、最小權限原則等纵深防禦。