PHP2Shell 是 PHP 的两个严重漏洞。WordPress、WooCommerce 和 Laravel 都是用 PHP 做的。补丁在 2026 年 10 月 21 日推出。简单来说,要修的是服务器上的 PHP,不是 WordPress。所以第一步,先搞清楚谁负责更新你网站的 PHP。
PHP2Shell 是什么?
这两个漏洞是 CVE-2026-109618 和 CVE-2026-109619,满分 10 分,各被评为 9.2 分。PHP 官方把它们称为"unauthenticated remote code execution"(无需登录的远程代码执行),意思是网上的陌生人不用登录,就能让你的服务器执行他们的指令。
PHP 官方的安全公告,2026 年 10 月 22 日截图。来源:php.net
PHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35 fix two critical vulnerabilities that can allow unauthenticated remote code execution. All PHP users are strongly encouraged to update immediately.
(PHP 8.5.12、8.4.27、8.3.36 和 8.2.35 修复了两个可能导致无需登录远程代码执行的严重漏洞,强烈建议所有 PHP 用户立刻更新。)
参与发现这些漏洞的 Wiz Research 说,就算是一个最简单的"Hello World"页面,只要跑在受影响的 PHP 版本上,也可能中招。它还在 WordPress、Drupal 和 Joomla 上演示了可行的攻击。
我的 WordPress 或 WooCommerce 网站受 PHP2Shell 影响吗?
只要网站跑在 PHP 上,在有人确认服务器已经打好补丁之前,都当作有影响。WordPress.org 说得很直接:
WordPress.org 的公告,2026 年 10 月 22 日截图。来源:WordPress.org
These vulnerabilities are not specific to WordPress and affect any server that hosts a PHP application. No WordPress update is required or planned for these issues.
(这些漏洞不只影响 WordPress,任何运行 PHP 应用的服务器都受影响。不需要也不会为此推出 WordPress 更新。)
| 你的 PHP 版本 | 从这个版本起已修复 | 备注 |
|---|---|---|
| 8.5 | 8.5.12 | |
| 8.4 | 8.4.27 | |
| 8.3 | 8.3.36 | |
| 8.2 | 8.2.35 | 2026 年 12 月 31 日停止支持 |
| 7.4、8.0、8.1 | 没有官方新版本,但有打好补丁的构建 | 问主机商要打好补丁的构建,或者升级 |
| 7.3 或更旧 | PHP 官方没有修复;cPanel 和 CloudLinux 有 5.2 起的补丁构建 | 问主机商要打好补丁的构建,再安排升级 |
怎么检查网站有没有这个漏洞
- 查 PHP 版本。在 WordPress 后台打开 Tools > Site Health > Info > Server,或者到主机控制面板看。
- 对照上面的表。低于已修复版本的,就要更新。
- 用书面方式问主机商或开发商:"我网站的 PHP 有没有打好 CVE-2026-109618 和 CVE-2026-109619 的补丁?"backport 补丁不一定会改变版本号,所以拿到一句书面的"有",比自己猜可靠。
- 有懂技术的人帮忙的话,可以跑 OpenAI 的免费工具 php2shell-checker,它会读取网站对外显示的 PHP 版本。我们今天试过:一台跑 8.4.26 的测试服务器显示 VULNERABLE,一台跑 8.4.27 的显示 OK,php.net 则显示 UNKNOWN。UNKNOWN 不代表已经打了补丁,因为服务器可以把版本号藏起来。
- 如果没办法马上更新,或者还在用 8.1 及更旧的版本,CISA 的建议是先把 PHP 系统下线,等打好补丁或升级再上线。
网站还在用 PHP 8.1 或更旧的版本怎么办?
PHP 官方不会再为 7.4、8.0 和 8.1 发布新版本,不过这三个版本的修复已经有了。PHP 安全团队为它们放出了源码补丁。PHP 核心开发者 Remi Collet 也在维护旧版 PHP 的安全补丁分支,他的 7.4、8.0 和 8.1 分支都已经加进这次的修复。Remi 的 RPM 软件源(RHEL、AlmaLinux)和 deb.sury.org(Debian、Ubuntu)这些软件包来源,旧版 PHP 的包就是从这些分支编译出来的。
所以直接问主机商:"我们的 PHP 有没有针对 CVE-2026-109618 和 CVE-2026-109619 打补丁?"要注意两点。打好补丁的构建还是显示旧的版本号,OpenAI 的检查工具照样会显示 VULNERABLE,Site Health 也还是显示旧版本,只能以主机商的答复为准。那比 7.4 更旧的版本呢?PHP 自己的补丁只到 7.4,但很多共享主机用的 cPanel 和 CloudLinux,已经为 5.2 到 8.5 的每个 PHP 版本出了打好补丁的构建(见 CloudLinux 的状态页面)。TuxCare 也有为旧版本提供付费的补丁构建。所以一样先问主机商。
给旧版本打补丁只是争取时间。升级到有官方支持的版本,这件事还是要排进计划。
对马来西亚企业有什么影响
我们的看法:打补丁本身不难,难的是可能根本没人负责这件事。用共享主机的话,PHP 通常由主机商更新。如果是开发商帮你开的云服务器,除非合约写明,否则往往没人管。开发商以为主机商会处理,主机商以为你会处理,结果服务器一直停在旧版 PHP。这个缺口,我们在软件维护成本指南里也谈过。
再来是 AI。Wiz 说,它在整个研究过程中都用了 Gemini 4 Argon 和 GPT-5.6 Sol,而这些漏洞已经在 PHP 里藏了十多年。攻击者也能用同样的模型,所以我们预计,从补丁公开到第一波攻击出现的时间会越来越短。CISA 发布警报时还没看到攻击,这就是你的先机,这个星期就用上。CISA 说,在打补丁之前,网页应用防火墙(WAF)或许能挡一部分,但 PHP 官方的说法是,更新是"the only safe choice"(唯一安全的选择)。
PHP 版本打了补丁,不代表整台服务器就安全了。如果服务器上线后就没人检查过,先从我们的服务器加固基础做起。如果里面存着客户资料,一旦被入侵,还可能算作要在 72 小时内通报的 PDPA 数据外泄。也可以看看真正的渗透测试包括什么。
想让我们帮你修好?
Gotchaa Lab 可以帮你在服务器上修补 PHP2Shell。我们先查清楚网站实际在跑哪个 PHP 版本,再按情况处理。PHP 8.2 到 8.5,我们更新到已修复的版本。PHP 7.4 到 8.1,我们为你现有的版本装上打好补丁的构建,网站照常运行,你再安排升级。7.3 或更旧的版本,我们先找有没有适合你服务器的补丁构建,再和你一起规划升级。修补完成后,我们会确认修复已经生效,也检查网站是否正常运作。
如果网站放在共享主机上,主机控制面板有已修复的版本,我们就帮你切换过去;没有的话,我们告诉你该怎么问主机商。
WhatsApp 联系我们,附上你的网站地址,或者看看我们的网络安全服务。
本文仅供一般参考,不构成专业网络安全建议或法律意见。
参考资料
- PHP security advisory, PHP.net, 21 October 2026
- Critical PHP Security Release, WordPress.org, 21 October 2026
- Critical Vulnerabilities in PHP Require Immediate Patching, CISA, 21 October 2026
- PHP2Shell: AI uncovers critical RCE vulnerabilities, Wiz Research
- php2shell-checker, OpenAI on GitHub
- php-src-security: security backports for end-of-life PHP versions, Remi Collet on GitHub
- PHP CVE-2026-109618 and CVE-2026-109619: fixed alt-php and ea-php packages, CloudLinux, 21-22 October 2026




