
大晚上阿里云通报PHP出现重大安全漏洞,还是紧急的。
今天看了一下 https://www.aliyun.com/notice/118746
PHP 官方发布安全公告,披露了两个远程代码执行漏洞(CVE-2026-109618、CVE-2026-109619)。未经身份验证的远程攻击者可通过发送特制的 HTTP 请求(如 multipart POST 请求)触发内存破坏,在服务器上执行任意代码。漏洞在请求进入业务代码之前即可触发,一定条件下,PHP-FPM、Apache mod_php、php-cgi、FrankenPHP、LiteSpeed 等处理 Web 请求的部署方式将受影响。
可以执行任意代码,确实危险。
看到说明是官方只维护8.2以后的版本,但是之前的版本在GitHub上给出了源码,这还是不错的。
现在来修复一台古老的用lnmp脚本安装的php7.4.
研究了一下,执行lnmp里面的upgrade.sh,按说明输入源码tar包版本就能升级,这还是很简单的。
下面说说具体方法。
GitHub上下下载源码
wget https://codeload.github.com/php/php-src/zip/refs/heads/PHP-7.4-CVE-2026-109618-109619
它是GitHub仓库快照(php-src 的 7.4 分支),不是官方release包,里面没有configure,也没有 Zend/zend_language_scanner.c、zend_language_parser.c 这些预生成文件,必须用 buildconf + bison + re2c 现场生成。
cd /root/lnmp1.9/src # 换成你的 cur_dir/src yum install -y unzip autoconf bison re2c pkgconfig # Debian/Ubuntu: apt install -y ... unzip -q php-src-PHP-7.4-CVE-2026-109618-109619.zip mv php-src-PHP-7.4-CVE-2026-109618-109619 php-7.4.34 # 目录名必须是 php-<版本号> cd php-7.4.34 chmod +x buildconf && chmod +x build/*.sh ./buildconf --force # 生成 configure ls -l configure # 确认存在 cd .. tar cjf php-7.4.34.tar.bz2 php-7.4.34 # 文件名必须是 php-<版本号>.tar.bz2
然后执行./upgrade.sh,版本号输入7.4.34。检测到本地包已有,脚本会跳过下载。
完成后执行php -v 查看版本信息。
![]()
重要:升级有风险,正式环境请慎重评估风险。
转载请注明:果果.IT » lnmp源码编译更新修复PHP7.4漏洞