发布时间:2026-10-23 21:45:42编辑发布:一网天行APP小程序软件开发公司 浏览量:
近日PHP官方发布安全公告,披露了两个远程代码执行漏洞(CVE-2026-109618、CVE-2026-109619,社区统称PHP2Shell)。未经身份验证的远程攻击者可通过发送特制的HTTP请求触发内存破坏,在服务器上执行任意代码。漏洞在请求进入业务代码之前即可触发,不依赖上层应用代码,一定条件下PHP-FPM、Apache mod_php、php-cgi、FrankenPHP、LiteSpeed等处理Web请求的部署方式将受影响。
目前漏洞细节已公开,请相关用户尽快排查业务中PHP的使用情况,若在影响范围内,建议第一时间完成更新或采取缓解措施。
漏洞详情
PHP是一种开源的通用服务端脚本语言,被广泛用于Web网站和应用开发,支撑WordPress、Drupal、Joomla 等内容管理系统及各类Web应用。据业界估算,约七成网站依赖PHP运行。
1.RCE via OOM corruption(CVE-2026-109618)
PHP使用longjmp() 处理内存耗尽(OOM)错误,以退出当前上下文并中止请求处理。部分上下文未正确考虑该场景,在执行内存分配前将请求内存置于未初始化状态,后续请求清理过程可能读取该内存或基于其进行分支。多种OOM触发策略均可稳定触发该条件,进而导致远程代码执行。涉及缺陷类型:CWE-416(释放后使用)、CWE-755(异常条件处理不当)、CWE-824(访问未初始化指针)、CWE-1325(内存顺序分配控制不当)、CWE-1419(资源初始化不当)。
2.RCE via stale global state(CVE-2026-109619)
PHP 存在若干临时指向请求内存的全局状态。在部分场景下,全局状态未被正确重置,或在重置后又被重新填充,导致其指向已释放的请求内存。同一worker处理的后续请求可能在状态完全初始化之前读取该残留状态或基于其进行分支,多种策略均可触发该条件并产生远程代码执行。涉及缺陷类型:CWE-416(释放后使用)、CWE-755、CWE-824、CWE-1325、CWE-1419。
风险等级
严重(Critical),CVSS v4.0评分9.2
漏洞风险
未经身份验证的远程攻击者利用此漏洞可在应用代码执行前获得Web工作进程权限,访问或篡改该账户可访问的数据或文件、植入恶意程序,并可能进一步导致服务器被完全接管、敏感数据泄露等影响。该漏洞不依赖上层应用代码,即使是简单的页面,只要运行在受影响版本的PHP引擎上即可被攻击,其中Apache mod_php运行方式风险最高。
影响版本
· PHP 8.2.x 小于8.2.35
· PHP 8.3.x 小于8.3.36
· PHP 8.4.x 小于8.4.27
· PHP 8.5.x 小于8.5.12
· PHP 8.1及更早版本:官方已停止支持,不再发布官方更新(官方仅为7.4 / 8.0 / 8.1提供了最小源码回溯补丁)
安全版本
· PHP 8.2.35
· PHP 8.3.36
· PHP 8.4.27
· PHP 8.5.12
修复建议
1.官方已发布安全修复版本,请评估业务影响后尽快升级至对应分支的安全版本(8.2.35、8.3.36、8.4.27、8.5.12)。升级后务必重启Apache、PHP-FPM及所有常驻worker进程,确保修复后的运行时被加载,容器化部署需重建并重新部署镜像。
2.Linux发行版与LTS厂商已提前获得补丁,请优先通过发行版源升级或向厂商索取对应安全更新包。发行版可能采用回溯补丁方式修复,PHP大版本号不变并不代表未修复,应以发行版/厂商的安全公告为准。PHP 8.1及更早版本官方不再提供更新,建议尽快迁移至受支持版本。
3.如果有宝塔,不管是7开始还是8开始的版本,都可以登录宝塔面板,进入「软件商店 → PHP → 设置 → 配置修改」,找到对应 PHP 的php.ini,配置文件,修改以下参数:session.upload_progress.enabled = 0
下一篇
最后一页北京
济南
成都
西安
