FrankenPHP 與 Caddy 安全更新:核對上傳檔與 FastCGI 路徑

FrankenPHP 與 Caddy 在 2026 年 11 月 5 日發布安全更新。如果主機使用 FrankenPHP 的 php_server,要查的是上傳檔會不會進入 PHP 處理器;如果是 Caddy 接 PHP-FPM,則要核對 FastCGI 的路徑規則與傳給應用程式的變數。兩套部署都不能只看 PHP 本身的版本。

先分清主機用的是哪一套

部署方式 應核對的版本
FrankenPHP 公告列 1.13.4 及以前受上傳檔執行問題影響;修於 1.13.5
獨立 Caddy 接 FastCGI 若仍在 2.11.8,升到 2.11.9,並核對下列使用條件

FrankenPHP 1.13.5 已包含 Caddy 2.11.9,並修補 FrankenPHP 自身的 17 項漏洞。若用容器,更新並重新部署實際提供服務的映像;若用自製二進位檔,則重新建置並核對運行中的版本。只更新另一個獨立安裝的 Caddy,不會替換 FrankenPHP 裡的那一份。

FrankenPHP:圖片副檔名不一定阻止 PHP 執行

原廠公告 GHSA-j99q-3wr8-xj43 指出,受影響的處理器在特定路徑判斷下,可能把沒有以設定中 PHP 類副檔名結尾的檔案當作 PHP 執行。利用仍需要能把檔案存入網站文件根目錄下,並能選擇符合觸發條件的檔名或目錄。預設設定下有一種路徑變體自 1.13.0 引入;自訂副檔名或 Windows 路徑另有不同條件。

除了升級,維護者可檢查附件、頭像與匯入檔的存放位置。能放在文件根目錄之外,就交由應用程式或獨立儲存服務提供下載;若保留公開上傳目錄,應確保該路由不會交給 PHP。這比只依檔名後綴判斷安全更可靠。

Caddy:檢查 FastCGI 的身分變數與路徑規則

Caddy 2.11.9 修正一項變數優先順序問題:若維護者用 FastCGI 的 env 設定 HTTP_* 變數,受影響行為容許對應的請求標頭覆蓋該值。只有當應用程式把這類值當作身分或授權依據,才會衍生相應的存取風險。更新後由伺服器配置值優先;應以正常登入與不同權限帳戶驗證應用程式收到的身分。

同版也補上 FastCGI 路徑判斷的缺口:若編碼前後的判斷會選到不同腳本,新版會拒絕這類不明確的請求;Windows 上亦拒絕相關短檔名及替代資料流路徑。若從 2.11.8 升級,順手驗證帶尾斜線的 PHP 目錄首頁,例如 WordPress 後台入口,因為這次也修了該版的目錄索引回歸。

官方公告交代了漏洞條件,未據此確認實際站點已遭入侵。更新後應驗證正常上傳、下載、登入及後台路由;有可疑檔案或請求時,先保留原檔與日誌,再交由維護者調查。

原廠發布日期:2026 年 11 月 5 日。封面為 AI 生成的概念插畫。

參考資料

原文鏈接:https://wntheme.com/frankenphp-caddy-november-2026-security-update/,轉載請註明出處。
0
顯示驗證碼
沒有帳號?註冊  忘記密碼?