非 php.net · 非 NVD · 非 CISA

PHP 漏洞追踪

关于 PHP 安全漏洞的非官方简报

English简体中文日本語Deutsch

安全警报

PHP2Shell:请升级 PHP。这是唯一完整的修复。

CVE-2026-109618 与 CVE-2026-109619 是 PHP 本体中的严重漏洞,未经身份验证即可远程执行代码。PHP 项目已于 2026 年 10 月 21 日为仍受支持的 8.2 至 8.5 分支发布修复。升级后必须重启 PHP。防火墙不能替代升级。

修复步骤

宝塔面板

宝塔里的哪个 PHP 版本修复了 PHP2Shell?

本页只跟随宝塔自己的公告(更新于 2026 年 10 月 22 日),不采用论坛帖或第三方博客里的步骤。英文对照在同一路径的英文站。同一份公告还写了 Node.js,这里不展开。

最近更新

每一行都是宝塔公告里的说法。上游 PHP 发行版只有 8.2 至 8.5 那一行。
项目宝塔公告怎么说来源
Linux 与 Windows 已同步PHP 8.2.35、8.3.36、8.4.27 和 8.5.12,公告称其中包含两项修复宝塔公告
旧分支的 Linux 包7.4.34、8.0.31 和 8.1.35。宝塔称这是其 Linux 构建,包含两项修复,可从软件商店安装。它们不是 PHP 项目的版本号。宝塔公告
Windows 的 PHP 8.1 及更早没有与这三个包对应的版本。只能临时设置:在实际加载的 php.ini 中写入 session.upload_progress.enabled=0,然后重启该 PHP 服务。这不是完整修复。宝塔公告
点击路径登录 → 软件商店 → 已安装 → 更新软件列表 / 支付状态 → 对正在使用的 PHP 点更新 → 确认版本和业务宝塔公告
严重性(公告复述)每个 CVE 的 CVSS v4.0 为 9.2。分数来自 PHP 安全团队,宝塔作了复述。宝塔公告;oss-security
上游发行版2026 年 10 月 21 日的 8.5.12、8.4.27、8.3.36 和 8.2.35。PHP 称更新是唯一完整的修复。php.net

在面板里升级

  1. 改 PHP 之前,先备份网站和面板配置。
  2. 登录宝塔面板。进入左侧「软件商店」,打开「已安装」。
  3. 单击右上角「更新软件列表 / 支付状态」,让列表变成最新。
  4. 找到网站正在使用的 PHP 版本,单击「更新」。对照上面的表确认版本号。
  5. 打开真实页面,并检查你依赖的功能。若安装了多个 PHP 版本,对每一个仍有站点在用的版本重复检查。

Windows 上的 PHP 8.1 及更早版本

公告写明,上面三个旧包版本号只适用于 Linux。对 Windows 的 PHP 8.1 及更早版本,它只给出在实际加载的 php.ini 里做的临时修改:

引自宝塔公告,作为 CVE-2026-109619 一条已确认路径上的不完整过渡。它不能修复两项漏洞。
session.upload_progress.enabled = 0

保存后重启对应的 PHP 服务。机器上每套旧 PHP 都要分别修改并重启。宝塔建议把这些 Windows 安装迁到仍受支持的分支,并安装对应的安全修复版本。同一份公告还指向 PHP 的其他不完整限制,包括 post_max_size(不需要上传时 8M,需要上传时 32M),以及警告:在没有 cgroup 或容器内存限制时,普通用户不要把 memory_limit 设为 -1。不要用 RLIMIT_AS 或 RLIMIT_DATA 代替那种限制。PHP 自己的措辞在修复页。

本页不覆盖的内容

同一份宝塔公告还列出了 Node.js 更新(公告表格中的 22.23.4、24.22.1 和 26.12.1)。本简报不写 Node.js,也不抄录利用步骤或日志特征。按分支的上游答案在 PHP 8.5、8.4、8.3、8.2 和 PHP 5 至 8.1 。

宝塔面板是否已经有 PHP 8.2 至 8.5 的修复?

公告称 Linux 与 Windows 面板已同步 8.2.35、8.3.36、8.4.27 和 8.5.12,并且这些构建包含两项修复。你仍然要为网站实际使用的每一个 PHP 版本安装更新,然后确认版本和业务。

宝塔的 PHP 8.0.31 是 PHP 官方版本吗?

不是。公告称 PHP 没有为 7.4、8.0 和 8.1 发布可安装包,7.4.34、8.0.31 和 8.1.35 是宝塔为 Linux 面板打包的版本。不要把这些号码读成 php.net 的发行版。本站的版本检查器也看不见它们。

Windows 上的 PHP 8.1 及更早版本怎么办?

公告称这些 Windows 构建没有上面三个 Linux 包。它给出的临时步骤,是在 PHP 实际加载的 php.ini 里设置 session.upload_progress.enabled=0,然后重启对应的 PHP 服务。宝塔称这只能缓解 CVE-2026-109619 的一条已确认路径,不能完整修复两项漏洞。

在面板里点哪里?

登录后打开「软件商店」,选择「已安装」,单击右上角「更新软件列表 / 支付状态」,再对网站正在使用的 PHP 单击「更新」。先做备份。安装了多个 PHP 版本时要分别检查。这些标签引自宝塔公告。

来源

出站链接将离开本站。本站不托管利用代码。

  1. PHP 与 Node.js 紧急安全更新公告(更新于 2026-10-22) — 宝塔面板 (BT Panel)
  2. News archive 2026: security advisory, 21 October 2026 — PHP project (php.net)
  3. CVE-2026-109618: PHP 8.2–8.5 RCE via OOM corruption — oss-security (Jakub Zelenka, PHP security team)