漏洞概述 | |||
漏洞名称 | PHP CGI Windows平台远程代码执行漏洞 | ||
漏洞编号 | QVD-2024-21704,CVE-2024-4577 | ||
公开时间 | 2024-06-07 | 影响量级 | 十万级 |
奇安信评级 | 高危 | CVSS 3.1分数 | 9.8 |
威胁类型 | 代码执行 | 利用可能性 | 高 |
POC状态 | 未公开 | 在野利用状态 | 未发现 |
EXP状态 | 未公开 | 技术细节状态 | 已公开 |
危害描述:未经身份认证的远程攻击者可以通过参数注入攻击在远程PHP服务器上执行任意代码。 |
01 漏洞详情
影响组件
PHP(Hypertext Preprocessor,超文本预处理器)是一种广泛使用的开源脚本语言,主要用于Web开发,用于生成动态网页内容。PHP的语法借鉴了C、Java、Perl等语言的特点,易于学习,并且可以快速执行。
漏洞描述
近日,奇安信CERT监测到官方修复PHP CGI Windows平台远程代码执行漏洞(CVE-2024-4577),未经身份认证的远程攻击者可以通过特定的字符序列绕过此前CVE-2012-1823的防护,通过参数注入攻击在远程PHP服务器上执行任意代码,从而导致远程代码执行、敏感信息泄露或造成服务器崩溃。目前该漏洞技术细节已在互联网上公开,鉴于此漏洞影响范围较大,建议客户尽快做好自查及防护。
02 影响范围
影响版本
PHP 8.3 < 8.3.8
PHP 8.2 < 8.2.20
PHP 8.1 < 8.1.29
(主要影响PHP在Windows操作系统上的安装版本)
其他受影响组件
Apache HTTP Server
(注:由于Apache HTTP Server常与PHP一起使用,特别是当PHP以CGI模式运行时,Apache HTTP Server可能会成为攻击的目标)
03 处置建议
安全更新
目前官方已有可更新版本,建议受影响用户升级至最新版本:
PHP 8.3 >= 8.3.8
PHP 8.2 >= 8.2.20
PHP 8.1 >= 8.1.29
注:由于 PHP 8.0、PHP 7 和 PHP 5 的分支已终止使用,并且不再维护,服务器管理员可以参考“缓解方案”中的临时补丁建议。
官方下载地址:
https://www.php.net/downloads.php
缓解方案:
1.对于无法升级PHP的用户:
以下重写规则可用于阻止攻击。需要注意的是,这些规则仅对繁体中文、简体中文和日语语言环境起到临时缓解作用。在实际操作中,仍然建议更新到补丁版本或迁移架构。
RewriteEngineOn
RewriteCond%{QUERY_STRING} ^%ad [NC]
RewriteRule .? - [F,L]
2. 对于使用 XAMPP for Windows 的用户:
如果确认不需要 PHP CGI 功能,可以通过修改以下 Apache HTTP Server 配置来避免受到该漏洞的影响:
C:/xampp/apache/conf/extra/httpd-xampp.conf
找到相应的行:
ScriptAlias /php-cgi/"C:/xampp/php/"
并将其注释掉:
# ScriptAlias /php-cgi/"C:/xampp/php/"
04 参考资料
[1]https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability-en/
[2]https://www.kb.cert.org/vuls/id/520827
[3]https://www.php.net/manual/en/security.cgi-bin.php
声明:本文来自奇安信 CERT,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。