漏洞概述

漏洞名称

PHP CGI Windows平台远程代码执行漏洞

漏洞编号

QVD-2024-21704,CVE-2024-4577

公开时间

2024-06-07

影响量级

十万级

奇安信评级

高危

CVSS 3.1分数

9.8

威胁类型

代码执行

利用可能性

POC状态

未公开

在野利用状态

未发现

EXP状态

未公开

技术细节状态

已公开

危害描述:未经身份认证的远程攻击者可以通过参数注入攻击在远程PHP服务器上执行任意代码。

0漏洞详情

影响组件

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的用户:

以下重写规则可用于阻止攻击。需要注意的是,这些规则仅对繁体中文、简体中文和日语语言环境起到临时缓解作用。在实际操作中,仍然建议更新到补丁版本或迁移架构。

    RewriteEngineOnRewriteCond%{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。