PHP2Shell是PHP核心运行时中的两项严重漏洞的统称:CVE-2026-109618和CVE-2026-109619。两者在CVSS v4.0中均获评9.2(严重),可能允许未认证的攻击者在存在漏洞的服务器上执行代码。PHP项目于2026年10月21日发布紧急修复。
47
对运维人员来说,首要任务是升级PHP。已有报告提到漏洞利用尝试,包括Amazon在公开披露前从蜜罐中观察到的活动;但这些报告并不能证明攻击者已入侵某个生产系统。
48
36
两项漏洞分别是什么?
两项漏洞的成因有所不同:
- CVE-2026-109618与内存耗尽处理有关。 PHP处理内存耗尽情况时,可能在请求内部数据尚未完全初始化时中断处理;随后进行清理时,PHP可能会把无效数据当作有效数据处理。
58
- CVE-2026-109619与过期的内部状态有关。 报告描述,某些请求相关状态在其所依赖的内存被释放后仍然残留,从而形成“释放后使用”(use-after-free)问题。
9
这些漏洞与PHP处理经过特制的HTTP请求有关,包括常用于文件上传的multipart/form-data请求。
47 若攻击成功,执行代码时使用的是Web工作进程账户的权限;这并不意味着攻击者会自动获得管理员或root权限。
1
9.2分意味着什么?
两项漏洞在CVSS v4.0中均被评为9.2分(严重)。无需登录即可尝试在受影响服务器上执行代码,是其风险突出的原因之一。
47
现有资料没有提供完整的CVSS评分向量,因此无法准确拆解每一项评分因素如何得出9.2分。这个分数反映漏洞严重程度,但不能单独说明某台服务器遭攻击的概率,也不能证明已经观察到的攻击尝试取得了成功。
哪些PHP版本需要修复?
报告称,受影响范围可追溯至PHP 5.4。
55 PHP 8.x各分支发布的紧急修复版本如下:
| PHP分支 |
已修复版本 |
| 8.2 |
8.2.35 |
| 8.3 |
8.3.36 |
| 8.4 |
8.4.27 |
| 8.5 |
8.5.12 |
这些版本于2026年10月21日发布。请升级到对应分支的修复版本,或该分支中更新的版本。
47
上述修复列表覆盖8.2至8.5分支。如果系统运行的是更早版本或已停止支持的分支,请向PHP发行方或操作系统供应商确认适用的补丁和升级建议,不要假定表中的版本可以直接用于这些系统。
有攻击尝试报告,但不等于确认发生入侵
漏洞信息原定于10月22日公开,但在10月20日已提前流出;PHP随后于10月21日发布紧急修复。
8
42 现有资料支持“信息提前公开、补丁提前发布”这一时间线,但不能据此确认某段误发布的Calif演示视频就是补丁提前发布的原因。
Amazon威胁情报称,其MadPot蜜罐遥测记录到一次可追溯至10月17日的PHP2Shell利用尝试,比漏洞公开早四天。Amazon还报告称,在10月21日补丁发布前后发现了概念验证利用代码。蜜罐记录显示攻击活动指向诱饵系统,不代表真实机构的生产系统已遭攻陷。
48
Cloudflare表示其在漏洞公开前后部署了防护措施,同时期报道也提到安全厂商观察到攻击流量或利用尝试。
55
35 对漏洞利用规模和成功情况的报道并不一致:部分厂商声称观察到活跃或大规模利用,另有同时期报道指出,政府机构尚未确认成功攻击。
33
36
现有证据足以说明应认真对待利用尝试,但不足以把每一次尝试都视为成功入侵,也不足以断定攻击已广泛得手。评估风险或处理事件报告时,应区分“有人尝试攻击”“利用代码能够奏效”和“生产系统确认遭入侵”。
修复期间可以采取什么措施?
安装PHP修复版本是首要措施。 AWS指出,升级才是完整修复。如果暂时无法打补丁,可以考虑暂时阻止multipart文件上传等方式降低暴露风险;这些措施不能代替升级。
47
48
加拿大网络安全中心已发布严重漏洞警报,说明漏洞可能导致未认证代码执行。
2 现有资料还报告称,美国国家安全局(NSA)建议无法立即更新的系统暂时下线。
27 如果PHP由产品捆绑提供或由托管服务商管理,请同时遵循相应供应商和政府机构针对该部署方式发布的公告。
实际处置可以归结为三步:找出哪些系统正在运行PHP,安装对应修复,并谨慎核查安全告警。PHP2Shell的严重程度要求尽快行动,但攻击尝试、可运行的利用代码和已确认的生产环境入侵,是不同层面的证据。