用通俗的话理解 PHP2Shell
PHP 是网站的运行引擎,WordPress、Laravel 和插件运行在它上面。更新插件不等于更新 PHP。这两个运行时内存安全漏洞可能让异常请求清理演变成信息泄露或代码执行。公开网站检测只能寻找线索,实际 Web 运行时和补丁必须由主机商或管理员确认。
找到网站真正使用的 PHP
WordPress:进入“工具 > 站点健康 > 信息 > 服务器”,私下记录 PHP 版本。面板:选择具体域名及其 PHP 处理器,不要只看面板默认值。有 SSH:将 php -v 与实际服务该域名的 FPM、Apache 服务或容器对照。不同站点、命令行任务和副本可能各用不同版本,不要公开 phpinfo 页面。
检测我的版本 →请主机商提供证据,而不只是一句已安全
请确认我的域名所使用的 PHP Web 运行时是否已修复 CVE-2026-109618 和 CVE-2026-109619 两个漏洞。请提供完整软件包或构建版本、厂商安全公告或变更记录,以及所有相关 FPM/Apache 工作进程、容器副本和常驻进程已替换或重启的确认。同时请说明能否协助审查留存的网站访问、PHP 和进程日志,排查可疑活动。一手来源与延伸阅读
PHP security team阅读原文 ↗CVE-2026-109618阅读原文 ↗CVE-2026-109619阅读原文 ↗php2shell.uk阅读原文 ↗研究解读与实用攻略
PHP2Shell 工具箱
检测公开网站、检查本地配置和日志,或查找开源应急工具。每种结果都会说明依据和局限。
01用通俗的话理解 PHP2Shell
PHP 是网站的运行引擎,WordPress、Laravel 和插件运行在它上面。更新插件不等于更新 PHP。这两个运行时内存安全漏洞可能让异常请求清理演变成信息泄露或代码执行。公开网站检测只能寻找线索,实际 Web 运行时和补丁必须由主机商或管理员确认。
02是攻击尝试,还是已经入侵?
异常 multipart 请求或 WAF 告警可能是攻击尝试。内存耗尽、SIGSEGV/SIGABRT、HTTP 500 突增也可能由正常故障造成。PHP 异常子进程、外连、文件修改或未授权账号值得立即排查,但归因仍需证据。纯内存泄露可能不生成 Webshell 或新文件,文件扫描干净也不能排除。
03先保全证据,再改动主机
记录发现时间、域名、实例、运行时、异常表现及最近一次可信状态。导出原始访问、错误、WAF 和进程日志并保留时区;有条件时保全云审计记录和经授权的磁盘、内存快照。限制副本访问权限,记录哈希。不要把 Cookie、令牌和用户数据传给公开扫描站。取证前避免清空日志或直接删除可疑文件。
04如何阅读 Wiz 与 Calif 的技术研究
两份研究解释了请求生命周期的错误为何可能影响后续请求。CVE-2026-109618 官方公告验证了 mod_php RCE;FPM 的易受影响判断基于源码分析,并没有展示该 CVE 的完整 FPM 利用。CVE-2026-109619 则确认了依赖应用条件的 FPM 上传进度利用路径。判断每个 SAPI 的证据范围应看对应 GHSA,不要把所有部署说成同样已验证。
05Cloudflare:为什么要看响应
Cloudflare 介绍结合请求与源站响应的完整事务检测,可在匹配到可疑响应时阻断可能的数据流出,这对不启动 Shell 的泄露路径也有意义。文章中的上线时间只是历史记录,不代表你的账号和路由已覆盖。请核实规则可用性、排除项和事件日志;直接访问源站和未经过代理的主机,仍需要修复与排查。