PHP web runtimes (CVE-2026-109618 and CVE-2026-109619)

Written by

in

,

有很多年沒聽過PHP 生這麼大的病,這一下就來兩個,主流的Linux 發行版都立刻更新,反而是FreeBSD 落後。

https://www.php.net/archive/2026.php#2026-10-21-5

這是什麼

Linux 直接 yum/dnf/apt/zypper update 就可以了,各大發行版事先就拿到了修補程式,所以更新很快。

FreeBSD 需要修改為最新的 latest repo 而不是預設的quarterly,如下:

mkdir -p /usr/local/etc/pkg/repos
cat > /usr/local/etc/pkg/repos/FreeBSD.conf <<'EOF'
FreeBSD-ports: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/latest"
}
EOF
pkg update -f
pkg upgrade -y

PfSense 發了公告 Netgate – https://www.netgate.com/blog/critical-php-security-update:

  • 只有把 GUI 或 Captive Portal 開放給不信任的網路時才有風險。GUI 預設只開在 LAN,我有開到WAN。
  • 有用 Captive Portal 的盡快更新 – 我有用。

各版本更新後的 PHP:

  • Plus 26.07、Plus 26.03.1、CE 2.9.0 → PHP 8.5.12

這次不是韌體更新,沒有新的小版本,所以 GUI 裡看不到,pfSense-upgrade -c 也可能顯示已經是最新。一定要從 Console 或 SSH 手動更新::

8) Shell                             

Enter an option: 8

[26.07-RELEASE][admin@Home.bbken.net]/root:
pfSense-upgrade -c && pkg upgrade -y && /etc/rc.reboot

有用 WireGuard 的一定要加上 pkg upgrade -fy pfSense-pkg-WireGuard,而且要放在 pkg upgrade -y 之後。

pkg upgrade -fy pfSense-pkg-WireGuard

因為這個package 寫得比較爛,有個php_wg 是寫死的。Netgate 的說法是,要重新安裝 WireGuard 套件,它才會用到正確的 PHP 版本,不然可能起不來(php_wg 是寫死的)。論壇上也有人回報,WireGuard 指向 PHP 的連結要重新安裝才會更新。如果你是從 WireGuard 連進去更新的,過程中連線很可能會斷掉,最好先準備其他連線方式,例如 IPSec/OpenVPN。

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *