PHP-CGI 是一种用于在 Web 服务器上运行 PHP 脚本的接口,通过 CGI(公共网关接口)将 PHP 解释器与 Web 服务器连接。
2024年6月,PHP官方发布新版本,修复了 PHP-CGI 中一个远程代码执行漏洞。鉴于该漏洞无前置条件,易于利用,且默认情况下可获取操作系统权限,建议所有使用受影响版本的企业尽快升级修复,以确保安全。
漏洞描述
Description
0****1
漏洞成因
PHP 在设计时忽略了 Windows 中的 Best-Fit 字符转换特性。当 PHP-CGI 在 Windows 平台上运行并使用特定语系(如简体中文936、繁体中文950、日文932等)时,攻击者可以构造特殊查询字符串。URL 解码后,这些字符串可能包含特定非ASCII字符,这些字符在 Windows 系统上会被映射为连字符,从而绕过 CVE-2012-1823 及 CVE-2012-2311 补丁,构造 cgi 模式的命令行参数,执行任意 PHP 代码。
该漏洞可在受影响的环境下执行任意PHP代码,从而获取操作系统权限。最严重的情况下,这可能导致服务器的完全接管,敏感数据泄露,甚至将服务器转化为发起其他攻击的跳板。
处置优先级:高
**漏洞类型:**代码执行
**漏洞危害等级:**高
**权限认证要求:**无需任何权限
**系统配置要求:**特定语言版本 Windows 通过 PHP-CGI 模式运行 PHP
**用户交互要求:**无需用户交互
**利用成熟度:**POC/EXP已公开
**批量可利用性:**可使用通用原理POC/EXP进行检测/利用
**修复复杂度:**低,官方提供升级修复方案
影响版本
Affects
02
PHP 8.3 < 8.3.8
PHP 8.2 < 8.2.20
PHP 8.1 < 8.1.29
其他版本官方已停止维护,可根据实际情况采取相应的缓解措施。
解决方案
Solution
03
对于无法升级更新PHP版本的使用者,可使用以下Rewrite规则来缓解风险,此方案仅适用于操作系统为简体中文936、繁体中文950、日文932语系的用户。
RewriteEngine On
官方已发布新版本修复漏洞,建议访问官方页面(https://www.php.net/)获取安全版本。
同时,PHP-CGI已经是一种过时且易出问题的架构,建议迁移至更为安全的Mod-PHP、FastCGI 或是 PHP-FPM 等架构。
漏洞复现
Reproduction
04
产品支持
Support
05
雷池:已发布自定义规则支持该漏洞检测。
全悉:已发布规则升级包支持该漏洞检测。
时间线
Timeline
06
6月6日 官方发布新版本修复漏洞
6月7日 长亭安全应急响应中心发布通告
参考资料:
[1]. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-4577
长亭应急响应服务
全力进行产品升级
及时将风险提示预案发送给客户
检测业务是否收到此次漏洞影响
请联系长亭应急服务团队
7*24小时,守护您的安全
第一时间找到我们:
应急响应热线:4000-327-707