PHP2Shell 不只打网站:25 台防火墙和管理服务器被攻陷之后
PHP 漏洞为什么会打到防火墙?从公开的 PAN-OS 攻击链,看管理接口暴露、内核提权和补丁后的排查。
Dream 报告 25 台防火墙及管理服务器被入侵;PAN-OS 厂商确认公网管理接口遭利用,应核对设备版本、管理面暴露和入侵痕迹。
相关信息
- 事件来源
- Dream 10 月 26 日披露、10 月 29 日更新,Palo Alto Networks 确认针对公网管理接口的利用
- 攻击链
- PHP2Shell 远程执行 + Fragnesia 内核本地提权
- 影响面
- 特定版本 PAN-OS 管理 Web 界面,包括 HTTPS Web UI 和 XML API
- 数据边界
- 25 台为研究团队报告的样本,不代表全球受害总数
这次被打开的不是普通网站
PHP2Shell 刚披露时,很多人的第一反应是:赶紧检查自己的 PHP 网站。但在 Dream Research 披露的一起攻击中,中招的入口并不是文章页面或商城,而是暴露在公网的防火墙管理接口。
研究团队称,他们找到的攻击记录涉及 25 台防火墙及管理服务器,其中三台属于同一个与美国政府有关的环境。攻击者先利用 PHP 漏洞在设备上执行代码,再利用 Linux 内核漏洞提权;在部分环境中,后续还出现了目录枚举和凭证提取。这个数字来自该团队看到的记录,并不是全球受害设备总数。
Palo Alto Networks 在 10 月 29 日的更新中确认,攻击者针对暴露在互联网的 PAN-OS 管理接口,串联 PHP 漏洞和内核提权。这里最值得关注的不是“PHP 还能打防火墙”这句新闻,而是:一个看似只是运维入口的 Web 服务,一旦失守,可能变成进入内网的起点。
PHP 怎么会出现在防火墙里?
防火墙也要让管理员登录、查看配置、调用接口。这些管理功能通常由设备自己的 Web 服务提供;产品外面看起来是网络设备,里面仍然可能包含 PHP、操作系统内核和各种第三方组件。只更新业务网站里的 PHP,不会自动更新设备固件里的 PHP。
PHP2Shell 指 CVE-2026-109618 和 CVE-2026-109619 两个 PHP 内存处理漏洞。Dream 分析的样本针对 PAN-OS 管理 Web 服务,先通过构造请求触发内存问题,最终让命令以受限服务账号运行。做到这一步和取得 root 是两回事:该团队报告攻击者又串联了 Fragnesia(CVE-2026-46300)内核本地提权,才进一步获得高权限。
这不是说所有装 PHP 的设备都能被同一个请求拿下。Dream 表示,样本为特定 PAN-OS 构建准备了版本相关参数;是否可利用需要看设备软件、补丁、管理接口是否可达等条件。
管理口与 VPN 门户别混为一谈
Dream 的报告提到管理 Web 服务与 GlobalProtect 门户的关系。厂商安全公告则明确区分:受影响的是管理 Web 界面,包括 HTTPS Web UI 和 XML API;普通数据面接口只有挂接管理配置文件时才涉及该管理入口。厂商 FAQ 说 GlobalProtect portal、gateway 和 Clientless VPN 本身不受此次问题影响。
因此不能看到公司开着 GlobalProtect 就断言已经暴露了这个漏洞,也不能因为没有公网管理 IP 就跳过内部暴露检查。实际要查的是哪块接口提供管理服务、哪些来源可以访问、设备和 Panorama 使用什么版本。
怎么查版本,怎么处置
Palo Alto Networks 的公告覆盖 PA-Series、VM-Series 防火墙上的 PAN-OS 以及虚拟和 M-Series Panorama,并按 10.2、11.1、11.2、12.1、12.2 的具体维护版本列出修复版本。小版本和 hotfix 不同,修复门槛也不同,不能只看“11.2”或“12.1”就作结论。
例如,公告中 12.2 分支给出的修复起点是 12.2.4-h1;11.2 则按不同维护分支分别列出 11.2.4-h23、11.2.7-h23 等多个门槛。请以厂商公告中与自己运行版本对应的那一行及最新可用状态为准,按变更流程升级。厂商还特别说明:11.2.10-h16 修复了 PHP 问题,但 Brotli 问题需看 11.2.10-h17,不能把两者混成同一个结论。
升级前后都要检查管理接口可达范围:优先移除不必要的公网管理访问,只允许受控的可信管理来源或跳板机访问。厂商还列出经过数据面检查等缓解方式;这些配置要结合现有网络、管理通路和回退方案评估,不能复制一条规则就算修复。
打完补丁,为什么还要回看日志?
补丁阻止后续利用,不会自动清除之前已经建立的持久化入口。先保全设备管理日志、安全告警、配置变更记录和有关系统的认证记录,再围绕异常管理访问、未知管理员、计划任务、配置变更以及内部身份系统的异常活动排查;发现可疑痕迹时按组织的事件响应流程隔离、取证和轮换受影响凭证。日志有命中也不等于一定成功入侵,需要结合上下文判断。
AWS 在自己的蜜罐遥测中看到最早可追溯至 10 月 17 日的 PHP2Shell 利用尝试,建议调查至少从这个日期开始。那是针对 PHP2Shell 的一般排查起点,不等于 Dream 这批 PAN-OS 攻击在 10 月 17 日已经发生;Dream 说明是在 10 月 25 日发现这组攻击留下的材料。
AI 参与到哪一步,目前还说不准
Dream 在攻击基础设施中发现了 Claude Code、配置了模型的安全工具等线索,认为脚本可能有 AI 辅助开发的迹象;但研究团队明确表示,没有直接证据证明漏洞利用或后续脚本就是 AI 编写的,也不认为这次行动是完全自主的攻击。
这一区别很重要:可以讨论攻击者如何借助工具提高效率,但不能把“发现 AI 工具”直接写成“AI 独立攻破 25 台防火墙”。另一个容易被忽略的细节是,Unit 42 撤回过更早一起欧洲机构事件与 PHP2Shell 的关联判断,原因是无法确认初始入口;后来更新的 PAN-OS 攻击链是另一项报告。
资料来源
- Dream Research:25 台设备攻击链及 AI 证据范围(10 月 29 日更新) ↗
- Palo Alto Networks:产品影响、修复版本和管理接口说明 ↗
- Unit 42:PAN-OS 攻击链和此前事件更正 ↗
- AWS:披露前利用尝试及调查起点 ↗
- 本站:PHP 安全更新后确认网站是否用上补丁 ↗
AI 编辑依据研究团队和厂商公开资料整理;未对第三方设备进行测试。编辑与更正说明。
修订记录
2026-11-02:首次发布:梳理 PAN-OS 公开攻击链、受影响入口和处置边界。