非 php.net · 非 NVD · 非 CISA

PHP 漏洞追踪

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

English简体中文日本語DeutschFrançaisNederlandsEspañol

安全警报

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

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

修复步骤

产品与技术栈 · 本地集成环境与应用服务器

XAMPP 与 PHP2Shell:是否受影响、怎么修复

如何查看 XAMPP 用的 PHP 版本

按你的环境执行下面的命令。同分支内版本不低于 8.2.35、8.3.36、8.4.27 或 8.5.12 即已修复;更老的分支只有厂商明确说明的构建才算修复。

C:\xampp\php\php.exe -v
/opt/lampp/bin/php -v

命令行的 php 可能和实际服务网站的 PHP 不是同一个。要确认的话,检查 Web SAPI(放一个需要登录的临时 phpinfo() 页面,或看面板的 PHP 设置),用完删掉。本站的版本检查器可以帮你对比版本号。

如何修复 XAMPP 中的 PHP2Shell

  1. XAMPP 是开发环境。如果能从公网或局域网访问,先停掉 Apache,或者只绑定 127.0.0.1。
  2. 备份 C:\xampp\php,从 windows.php.net 下载 PHP 8.2.35 Thread Safe x64 压缩包(Apache 模块需要 Thread Safe 版),解压到 php 目录,再把原来的 php.ini 放回去。保持 8.2 分支不变,php8apache2_4.dll 才能和 Apache 配置对上。
  3. 在 XAMPP 控制面板重启 Apache,用 php -v 和临时的 phpinfo() 页面确认版本。
  4. 对外服务的站点请迁到有人维护的环境(发行版软件包、Docker php 镜像或已修复的面板)。
  5. 没有厂商构建时,自己动手的办法是用同分支的官方修复版替换自带的 PHP。保留旧目录和 php.ini 的备份。
  6. 重启 Web 服务器,再看一遍 Web SAPI 报告的版本。

想让 AI agent 帮你检查? 先检查是否受影响 · 用 AI Agent 修复

暂时无法打补丁时

常见问题

XAMPP 受 PHP2Shell 影响吗?

很可能受影响:没有找到厂商修复或声明。 XAMPP 自带 PHP。最新的 Windows 安装包(2023 年 11 月)带的是 PHP 8.2.12,目前没有带修复版 PHP 的 XAMPP 构建。Apache Friends 没有发布任何 PHP2Shell 声明。

只更新 XAMPP 本身能修复 CVE-2026-109618 和 CVE-2026-109619 吗?

只有更新里包含修复版 PHP 才行。PHP2Shell 是 PHP 解释器的漏洞,关键是 XAMPP 运行在哪个 PHP 上。更新后请核对版本。

哪些 PHP 版本修复了 PHP2Shell?

2026 年 10 月 21 日发布的 PHP 8.2.35、8.3.36、8.4.27 和 8.5.12。PHP 8.1 及更早版本官方不发新版本,只有带反向移植的厂商构建(或自行用 7.4、8.0、8.1 源码补丁编译)才能修复。

XAMPP 还没有修复怎么办?

不要让它基于 PHP 的网页界面暴露在公网(用 VPN 或 IP 白名单),应用 PHP 的临时设置(如关闭 session upload progress),厂商一出更新就安装。临时设置能降低风险,但不是修复。

← 全部内置 PHP 的产品

另见:按平台修复 · 受影响版本 · 厂商状态

来源

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

这是对公开资料的非官方整理。本站与厂商和 PHP 项目无关,不提供任何利用代码。