LibreNMS PHP 版本更新
PHP 官方於 2026-10-21 發佈安全更新,修補兩個嚴重漏洞:CVE-2026-109618 與 CVE-2026-109619(官方預告評分皆為 CVSS v4.0 9.2,等級為 Critical)。部分資安廠商與研究人員將這兩個漏洞稱為「PHP2Shell」(此非 PHP 官方名稱)。依官方公告,兩者都可能讓未經登入的遠端攻擊者執行任意程式碼(RCE),所有提供網頁服務的 PHP 環境(包含 PHP-FPM)都在影響範圍內。PHP 官方公告未提及實際攻擊。資安廠商的觀察並不一致:watchTowr 與 Datadog 表示已觀察到利用嘗試或大範圍掃描,Check Point 撰文時則表示尚未發現實際利用(2026-10-22 查證)。在說法分歧的情況下,建議以「可能已遭攻擊」為前提,儘速完成更新。
PHP 官方已於 2026-10-21 針對此問題發佈修正版本(8.5.12、8.4.27、8.3.36、8.2.35),Ubuntu 與 Debian 仍在支援期的版本也已提供修補套件(見補充說明)。官方表示沒有完整的緩解措施,更新是唯一安全的作法。LibreNMS 的網頁介面由 PHP 提供,請依本文儘速更新。可從網際網路或其他不受信任網段存取網頁介面的主機請優先處理;僅限內網使用的主機也建議盡快更新。
運行環境
- 系統環境:Debian 或 Ubuntu(以 apt 管理套件)
- Web 服務:Nginx + PHP-FPM
- PHP 來源:作業系統內建套件庫,或 Sury 套件庫(packages.sury.org)
RHEL 系作業系統(dnf/Remi)不在本文範圍,請依該發行版的公告處理。使用 Apache 的主機,步驟四請改為重啟 apache2。
前置需求
- 以 root 或具 sudo 權限的帳號登入
- 安排維護時段:僅更新 PHP 預估數分鐘,網頁介面會短暫中斷,建議選在輪詢與告警較少的時段
- 更新前先對 LibreNMS 虛擬機(或容器)建立快照,以便更新失敗時回復(快照不等於備份,使用方式見補充說明)
更新過程
步驟一:確認目前的 PHP 版本
- 登入 LibreNMS 後,點選右上角齒輪,再點選「關於 LibreNMS」
- 此處會顯示目前的 PHP 版本(範例為更新前的 8.5.11,尚未修補)
注意:此頁顯示的是 PHP 本身回報的版本號。Ubuntu 內建套件是在原版號上回補修補(例如 Ubuntu 24.04 修補前後都顯示 8.3.6),因此不能拿這個版本號直接對照官方的修補版本,是否已修補請以步驟五為準。
- 以 SSH 連線到 LibreNMS 主機,確認作業系統與已安裝的 PHP 套件
. /etc/os-release; echo "$PRETTY_NAME"
dpkg -l 'php[0-9]*-cli' 'php[0-9]*-fpm' | grep '^ii'
步驟二:建立快照
- 在虛擬化平台對 LibreNMS 虛擬機(或容器)建立快照,以確保更新過程失敗造成服務異常時可以回復
步驟三:更新 PHP 套件
- 只更新 PHP 相關套件(建議)。apt 會列出變更內容,確認後再輸入 Y,請勿加上
-y
apt update
apt install --only-upgrade $(dpkg-query -W -f='${db:Status-Abbrev} ${Package}\n' 'php*' | awk '$1=="ii"{print $2}')
- 如果您定期維護,也可以一併更新所有套件(其他套件也會更新,可能連帶重啟其他服務)
apt update && apt upgrade
步驟四:重啟 PHP-FPM
- 套件更新時通常會自動重啟 PHP-FPM,仍建議手動重啟並確認。第二行的
php8.x-fpm請換成第一行列出的服務名稱,Nginx 通常不需要重啟
systemctl list-units 'php*-fpm*' --no-legend
systemctl restart php8.x-fpm
- 只更新 PHP 不需要重開機。如果同時更新了核心(Ubuntu 可檢查
/var/run/reboot-required是否存在),請另外安排時間重開機
systemctl reboot
步驟五:確認是否已修補
- 檢查套件更新紀錄是否包含本次漏洞。每個已安裝的 PHP 版本會顯示一行,請看實際提供 LibreNMS 的那一行:數字大於 0 代表已包含修補。若為 0,請改用補充說明的最低修補版本表比對版本,不要單憑此項判定尚未修補(部分套件的更新紀錄可能不列 CVE 編號)
zgrep -cH 'CVE-2026-10961[89]' /usr/share/doc/php[0-9]*-common/changelog.Debian.gz
- 確認 PHP-FPM 已重啟為新版(Active since 的時間應晚於更新時間)
systemctl status php8.x-fpm --no-pager | head -5
-
回到 LibreNMS 網頁介面,開啟「Validate Config」,確認沒有與 PHP 相關的紅色失敗項目。若 PHP-FPM 與命令列的 PHP 版本不同,這裡會提示重啟 php-fpm;此項只比對版本號,不能取代上面兩項檢查
-
回到 LibreNMS 網頁介面,開啟「關於 LibreNMS」,確認 PHP 版本已是修補版(範例為更新後顯示 8.5.12;Ubuntu 內建套件請以上述檢查為準)
補充說明
- 各作業系統的最低修補版本(2026-10-22 查證,請以各來源頁面為準)
| 作業系統 | PHP 套件 | 最低修補版本 |
|---|---|---|
| Ubuntu 22.04 | php8.1 | 8.1.2-1ubuntu2.28 |
| Ubuntu 24.04 | php8.3 | 8.3.6-0ubuntu0.24.04.13 |
| Ubuntu 26.04 | php8.5 | 8.5.4-0ubuntu1.5 |
| Debian 12 | php8.2 | 8.2.35-1~deb12u1 |
| Debian 13 | php8.4 | 8.4.27-1~deb13u1 |
| Sury 套件庫 | php8.2/8.3/8.4/8.5 | 與 PHP 官方修補版相同:8.2.35/8.3.36/8.4.27/8.5.12 |
PHP 官方修補版為 8.5.12、8.4.27、8.3.36、8.2.35,使用其他第三方套件庫者,請向該來源確認已提供修補版。
- PHP 8.1、8.0、7.4:PHP 官方已不再發佈更新。使用作業系統內建套件者,請以發行版的安全公告為準(例如 Ubuntu 22.04 的 php8.1 已有修補,見上表);自行編譯或使用第三方來源者,請洽來源提供者,或規劃升級。
- 升級規劃:建議升級到 PHP 8.4 以上。PHP 8.2 將於 2026-12-31 結束安全支援,不建議作為升級目標。
- 降低風險的設定不能取代更新:官方公告列有數項降低特定攻擊路徑風險的設定,但官方明確表示這些設定不能使系統變安全,請以更新為準,細節請見官方公告。
- 更新後請確認有無入侵跡象:若更新前已遭入侵,更新無法清除已被植入的後門。主機的網頁介面曾對外開放者,資安廠商建議檢查:網站目錄是否出現新的 .php 檔、是否有異常排程(cron)或新增帳號,以及 PHP-FPM、Nginx 程序是否衍生出 sh、bash、curl、wget 等行程。LibreNMS 本身會自動更新並呼叫外部程式,正常運作也可能出現類似現象,判讀請交由維護廠商;未發現異常不代表未遭入侵。發現可疑跡象時,請勿自行刪除檔案、重灌或回復快照,先保存日誌與更新前的快照,再洽維護廠商協助。
- 快照的使用:快照不等於備份。回復快照會丟失快照之後的監控資料,確認更新正常後請刪除快照(網頁介面曾對外開放的主機,請先確認無入侵跡象再刪,見上一項)。LXC 容器的快照需儲存後端支援,不支援時請改用 vzdump 備份。
疑難排解
- 錯誤訊息:
Unit php8.x-fpm.service not found解決方式: 服務名稱與實際安裝的版本不同,請以systemctl list-units 'php*-fpm*' --no-legend查出正確名稱再重啟。 - 錯誤訊息: 更新時 dpkg 停在套件未完成設定,或 PHP-FPM 重啟失敗
解決方式: 先以
php-fpm8.x -t(換成實際版本)檢查設定檔,修正後執行dpkg --configure -a。 - 錯誤訊息: apt 顯示無法取得鎖定(lock) 解決方式: 系統可能正在執行自動更新,請等候數分鐘後重試。
- 狀況: 更新後網頁介面異常,無法排除 解決方式: 回復更新前的快照,再洽維護廠商協助。
備註
- 本文的版本資訊為 2026-10-22 查證結果,後續若有變動,請以 PHP 官方及發行版的安全公告為準。
- 跨大版本升級(例如 PHP 8.2 升級到 8.5)涉及 PHP-FPM、Nginx 與 Composer 設定,請另行參考《LibreNMS PHP 版本更新 - Ubuntu》。
版本紀錄
- 2026-10-22:初版建立
參考相關網頁
- PHP 官方公告(2026-10-21 Security advisory:Critical remote code execution vulnerabilities)
- PHP 支援版本與期限
- Ubuntu:CVE-2026-109618
- Debian Security Tracker:CVE-2026-109618
延伸閱讀(第三方資安廠商分析,非官方公告)


