PHP 8.2–8.5 修复版本已发布 独立社区资源 · 事实核实于 2026年10月22日

PHP2Shell 检测工具 / 1Panel PHP

1Panel PHP 修复 PHP2Shell:把网站换到修复版运行环境

1Panel 的 PHP 运行环境基于 1panel/php 镜像,已有 8.2.35、8.3.36、8.4.27、8.5.12 修复标签,7.4、8.0、8.1 另有 1Panel 维护标签 7.4.34、8.0.31、8.1.35。在“网站 → 运行环境 → PHP”建修复版运行环境,把网站切过去再核对;升级面板不等于升级 PHP。

PHP2Shell.help 编辑部核实日期 官方来源 ↓

1Panel 用户受 PHP2Shell 影响吗?

很可能需要处理。1Panel 的 PHP 运行环境是 PHP-FPM 容器,PHP 官方明确说 FPM 部署同样受 PHP2Shell 影响,用 OpenResty 做前端也不能排除。只要网站用的 PHP 低于所在分支的修复版本,就在受影响范围内:

分支首个修复版本
PHP 8.28.2.35
PHP 8.38.3.36
PHP 8.48.4.27
PHP 8.58.5.12
8.1 及更早无新发行版(7.4、8.0、8.1 有官方源码补丁)

PHP2Shell 是 PHP 运行时的漏洞,1Panel 里要修的是网站背后的 PHP 运行环境容器和一键部署应用里的 PHP,不是面板程序。

怎么查 1Panel 网站用的是哪个 PHP?

先分清网站是哪种类型,不同类型的 PHP 在不同地方:

网站类型PHP 在哪里怎么看
运行环境网站(PHP 类型)1Panel 的 PHP 运行环境容器在网站列表点“配置”,基本标签里的 PHP 一项显示网站绑定的运行环境;再到“网站 → 运行环境 → PHP”看该运行环境的版本
一键部署的应用(WordPress 等)应用自己的镜像应用商店 → 已安装,看应用版本;PHP 版本要看该应用镜像,或用 WordPress 站点健康查看
本地运行环境服务器上自己装的 php-fpm按系统包管理器的方式核对,见 Ubuntu 升级 PHP

依据:1Panel 网站配置文档写明“PHP 类型的网站可以切换不同的 PHP 运行环境”,1Panel PHP 运行环境文档说明运行环境可从应用商店或本地创建。

另外要确认面板是 v1 还是 v2。阿里云轻量应用服务器的 1Panel 应用镜像,阿里云文档写的版本是 1Panel 1.10.x,属于 v1;v1 和 v2 的 PHP 应用包是分开维护的。

1Panel 官方发布 PHP2Shell 修复了吗?

镜像和应用商店已经更新,但截至本站核实时未见官方公告(官网文档、论坛、GitHub Release 里都没有 PHP2Shell 说明)。我们核对到的是:

1Panel 版本标签镜像里的 PHP说明
8.2.35 / 8.3.36 / 8.4.27 / 8.5.12与标签相同PHP 官方修复版本
8.1.358.1.34 + 官方源码补丁1Panel 维护标签,不是 PHP 官方版本
8.0.318.0.30 + 官方源码补丁同上
7.4.347.4.33 + 官方源码补丁同上
  • Docker Hub 上的 1panel/php 标签:以上七个 -fpm 标签已于 2026-10-21(UTC)推送,支持 amd64、arm64、arm/v7。
  • v2 应用商店:appstore PR #10065 于 2026-10-21 22:11(UTC)合并,PHP 8 默认版本改为 8.5.12,PHP 7 默认改为 7.4.34,下拉框里 7.4、8.0、8.1 的修复版本标注为“1Panel patched”。
  • v1 应用商店:appstore PR #10068 于 2026-10-22 01:05(UTC)合并,新增 7 个 v1 版本包。提交说明写着 v1 模板的镜像构建与运行兼容性在提交时尚未全部验证。
  • 7.4.34、8.0.31、8.1.35 的做法写在 1Panel runtime 仓库的说明里:在官方旧版本上打 PHP 官方的源码补丁,PHP 版本号保持不变。

注意 1Panel 的 8.0.31 和宝塔的 8.0.27 号码不同,两家各自编号,不能跨面板比较。

1Panel 里怎么升级 PHP?

1Panel v2(运行环境网站),按官方文档的入口操作:

  1. 备份网站文件和数据库。
  2. 网站 → 运行环境 → PHP,点击“创建运行环境”,来源选应用商店,版本选修复版本(7.4、8.0、8.1 选带“1Panel patched”标注的那一项),扩展勾选和旧环境一样的。下拉框里还没有修复版本,说明面板的应用商店数据还没同步到新版本,先别用旧版本凑合。
  3. 在旧运行环境的“更多 → 配置”里看 php.ini 改过什么,搬到新运行环境。
  4. 在网站列表点“配置”,基本标签的 PHP 一项里把网站切换到新运行环境。
  5. 网站正常后,再停用旧运行环境。

1Panel v2.3.0 更新日志写明支持“切换已安装运行环境版本”,也可以直接给原运行环境换版本。具体按钮以面板界面为准,本站未逐一核实。

1Panel v1:v1 的修复版本包 2026-10-22 才合并,提交说明提示兼容性未全部验证。建议先新建一个修复版本的运行环境,用测试站点试过扩展和上传,再切换正式网站。官方也有 从 V1 版本升级 的文档,迁移前先完整备份。

一键部署的应用:在应用商店 → 已安装 → 可升级里升级(1Panel 已安装应用文档),升级时可选择备份和拉取最新镜像。应用镜像里的 PHP 由应用上游决定,升级后仍要核对 PHP 版本,见 Docker PHP 镜像。

本地运行环境:PHP 由系统包管理器提供,按 PHP2Shell 修复 和 Ubuntu 升级 PHP 处理。

升级后怎么重启和核对?

网站切到新运行环境后,请求由新的 PHP-FPM 容器处理;如果是给原运行环境换版本,要等它重建完成、状态恢复为运行中。核对时注意三点:

  1. 看网站实际用的运行环境:网站配置 → PHP 里显示的应是新运行环境,不是旧的。
  2. 7.4、8.0、8.1 别只看 php -v:1Panel 维护标签里 PHP 版本号不变,php -v 显示 7.4.33、8.0.30、8.1.34 是正常的,要以运行环境选的版本(7.4.34、8.0.31、8.1.35)为准。8.2–8.5 则应直接显示修复版本号。
  3. 每个运行环境都要换:服务器上有几个 PHP 运行环境、几个一键部署的 PHP 应用,就核对几次。

WordPress 网站可以再看一眼 站点健康。把核对结果填进 PHP 版本检测,其他环境回到 PHP2Shell 检测。

暂时没法升级怎么办?

先做临时缓解,同时尽快排期升级。在运行环境的“更多 → 配置”里按 临时缓解 修改 php.ini,保存后重启该运行环境,让所有 PHP-FPM 进程重新加载。这些设置只能挡住部分攻击路径,不是修复。

云厂商的 Web 应用防火墙、云防火墙也一样:可以减少暴露,但改变不了 PHP 本身的漏洞。有用户数据、支付的网站,来不及升级就先暂停或限制访问。

不要从 issue 评论、群聊里下载来路不明的“补丁”或脚本,修复只认 1Panel 官方镜像和 PHP 官方。

1Panel 里的老 PHP(5.6、7.0–7.3)怎么办?

1Panel 应用商店的 PHP 7 下拉框里,7.0–7.3 仍是旧版本,没有修复标签;PHP 官方也只给 7.4、8.0、8.1 提供了源码补丁。用 5.6、7.0–7.3 的网站,能迁就迁到 8.2 以上,迁不动的先限制访问。7.4、8.0、8.1 换到 1Panel 维护标签只是修了这两个漏洞,分支本身已停止官方维护,仍要规划迁移。见 PHP 停止维护版本。

用宝塔的服务器请看 宝塔 PHP。

1Panel 的 PHP 7.4.34、8.0.31、8.1.35 是 PHP 官方版本吗?

不是。这三个是 1Panel 自己的镜像标签,镜像里的 PHP 仍是 7.4.33、8.0.30、8.1.34,加上了 PHP 官方针对 PHP2Shell 的源码补丁。所以在容器里运行 php -v 看到的是旧号码,要以运行环境用的镜像标签为准。

1Panel 面板升级到最新版,PHP 就修好了吗?

没有。1Panel 面板和网站用的 PHP 运行环境是两回事,面板升级不会替换已经在跑的 PHP 容器。必须把网站换到修复版本的运行环境,或者升级一键部署的应用,再核对版本。

检测你的 PHP 是否受 PHP2Shell 影响

输入网站使用的 PHP 版本,我们会和该分支的首个修复版本比较,并告诉你下一步怎么做。

PHP2Shell 检测工具 →

来源

本页的核心事实(修复版本、CVE 详情、发行版软件包、官方机构的提醒)都来自官方来源;研究报告、新闻和社区讨论已分别标注。