针对旧版 PHP 5.4.23 的补丁,用于修复 CVE-2026-109618 和 CVE-2026-109619 漏洞(OOM 漏洞缓解)
本仓库包含一个自定义的 .patch 文件,用于 PHP 5.4.23,以修复严重的 PHP2Shell 内存耗尽(OOM)漏洞(CVE-2026-109618 / CVE-2026-109619)。
由于 PHP 5.4.23 已正式停止支持(EOL),此补丁修改了核心处理例程中的内存分配模型,以防止在文件上传进度跟踪期间出现内存耗尽攻击向量。
下载 PHP 5.4.23 源代码并解压:
tar -xvf php-5.4.23.tar.gz
cd php-5.4.23
将此补丁文件下载到 PHP 源代码目录中。
应用补丁:
patch -p1 < php-5.4.23-oom-startup-failclosed.patch
patch -p1 < php-5.4.23-session-state.patch
or
patch -p1 < php-5.4.23-php2shell-combined.patch
or
(find yourself this kind of lines in 5.4 - 5.6 all versions and make your own patch careffuly)
照常重新编译 PHP:
./configure --your-modules-flags...
make clean
make
sudo make install
编译完成后,你可以验证内存管理限制在高并发上传负载下能否正常工作,而不会导致段错误或 OOM 崩溃。
按原样提供。在升级生产服务器之前,请在预发布环境中进行充分测试。