正文

PHP2Shell | 修复php核心远程代码执行漏洞

php  shell  nginx  ubuntu 

[前言]


近期出现PHP2Shell:两个 PHP 核心远程代码执行漏洞,分别是:CVE-2026-109618、CVE-2026-109619,这次事件不是某个 PHP 网站程序的普通漏洞,而是 PHP 运行时本身存在的严重安全问题。攻击者在特定条件下可以不登录,远程触发代码执行,进而以 Web 服务进程的权限控制服务器。两个漏洞的 CVSS v4.0 评分均为 9.2。

[问题]


漏洞编号

技术原因

潜在影响

CVE-2026-109618

OOM(内存耗尽)处理过程中的内存状态异常

可能造成远程代码执行

CVE-2026-109619

Use-After-Free,即使用已经释放的内存,涉及请求间残留的内部状态

可能造成远程代码执行

[升级]


PHP 分支

修复版本

建议

PHP 8.5

8.5.12

立即升级

PHP 8.4

8.4.27

立即升级

PHP 8.3

8.3.36

立即升级

PHP 8.2

8.2.35

立即升级,并规划迁移

PHP 8.1 及更早版本

不在上述修复版本列表中

核实官方公告、发行分支及供应商补丁,不能假定已修复

[处理]


以下按照 Ubuntu 24.04 Nginx PHP-FPM 8.3 ppa:ondrej/php 环境执行。

步骤

操作

命令或配置

验收标准

1. 备份配置

备份 PHP 配置

sudo cp -a /etc/php/8.3 /root/php8.3-backup-$(date %F)

备份目录存在

2. 确认版本

检查 CLI 与 FPM 软件包

php8.3 -v;dpkg-query -W php8.3-cli php8.3-fpm php8.3-common

CLI、FPM 均为 8.3.36 对应的软件包

3. 核对漏洞修复

核对官方安全公告及软件包来源

apt-cache policy php8.3-cli php8.3-fpm php8.3-common

版本与软件源信息明确,未使用旧版本二进制

4. 升级安全补丁

如仍有旧包,更新软件包索引并升级

sudo apt update,再按实际候选版本升级

不再运行受影响的旧版本

5. 检查 PHP 配置

检查 FPM 配置语法

sudo php-fpm8.3 -tt

配置测试通过

6. 重启 FPM

让新版本及安全配置生效

sudo systemctl restart php8.3-fpm

systemctl is-active php8.3-fpm 返回 active

7. 检查 Nginx

测试并重载配置

sudo nginx -t && sudo systemctl reload nginx

Nginx 配置测试成功

8. 验证线上环境

访问现有 PHP 网站及关键功能

测试登录、后台、数据库、验证码、Redis 等

页面正常,无新增 502/500

9. 检查异常

查看 FPM 启动日志

sudo journalctl -u php8.3-fpm -n 100 --no-pager

没有新增扩展加载错误

[验证]


由于php无法使用命令行查看是否在某个版本添加了补丁,只能根据提供的 apt list输出和 php -v 信息,系统运行的是 ‌PHP 8.3.36‌。这是 PHP 官方于 2026年10月21日发布的紧急安全更新版本,专门用于修复高危漏洞 ‌PHP2Shell‌(CVE-2026-109618 和 CVE-2026-109619) ‌。

hu@iZuf69796mhmpttnjlp98kZ:~# apt list --installed | grep php8.3

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libapache2-mod-php8.3/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed,automatic]
php8.3-cli/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed,automatic]
php8.3-common/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed,automatic]
php8.3-curl/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-fpm/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-gd/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-igbinary/noble,now 3.2.16-6 ubuntu24.04.1 deb.sury.org 1 amd64 [installed,automatic]
php8.3-intl/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-mbstring/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-mysql/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-opcache/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed,automatic]
php8.3-readline/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed,automatic]
php8.3-redis/noble,now 6.3.0-2 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3-xml/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 amd64 [installed]
php8.3/noble,now 8.3.36-1 ubuntu24.04.1 deb.sury.org 1 all [installed,automatic]

[下载]


下载链接

本站不直接提供下载,所有下载链接均为第三方,部分图片生成基于chatgpt

ubuntu | USN-8948-1

php | website

评论
还没有评论
留言