【漏洞通告】PHP CGI Windows平台远程代码执行漏洞(CVE-2024-4577)
发布时间 2024-06-07一、漏洞概述
漏洞名称 | PHP CGI Windows平台远程代码执行漏洞 | ||
CVE ID | CVE-2024-4577 | ||
漏洞类型 | 参数注入、RCE | 发现时间 | 2024-06-07 |
漏洞评分 | 9.8 | 漏洞等级 | 严重 |
攻击向量 | 网络 | 所需权限 | 无 |
利用难度 | 低 | 用户交互 | 无 |
PoC/EXP | 已公开 | 在野利用 | 未发现 |
PHP是一门通用开源脚本语言,其语法借鉴吸收C、Java和Perl等流行计算机语言的特点,因此利于学习,使用广泛,主要适用于Web开发领域。
6月7日,启明星辰集团VSRC监测到PHP发布安全更新,修复了PHP CGI Windows平台远程代码执行漏洞(CVE-2024-4577),目前该漏洞的细节已公开。
PHP语言在设计时忽略了Windows系统内部对字符编码转换的Best-Fit特性,当PHP运行在Window平台且使用了如繁体中文(代码页950)、简体中文(代码页936)和日文(代码页932)等语系时,威胁者可构造恶意请求绕过CVE-2012-1823的防护,通过参数注入等攻击在目标PHP服务器上远程执行代码。
二、漏洞复现
三、影响范围
PHP 8.3 < 8.3.8
PHP 8.2 < 8.2.20
PHP 8.1 < 8.1.29
注:该漏洞影响安装于Windows系统上的PHP 版本。由于PHP 8.0 分支、PHP 7 以及PHP 5 官方已不再维护,网站管理员可查看是否受该漏洞影响并应用相关缓解措施。
四、安全措施
4.1 升级版本
目前该漏洞已经修复,受影响用户可升级到PHP版本8.3.8、8.2.20、8.1.29或更高版本。
下载链接:
https://github.com/php/php-src/tags
4.2 临时措施
Windows平台中Apache HTTP Server 加上PHP 组合、XAMPP for Windows安装的以下场景可能易受该漏洞影响:
1. 将PHP 设定于CGI 模式下执行。在Apache Httpd 配置文件中通过Action语法将对应的HTTP 请求交给PHP-CGI脚本文件处理时,受此漏洞影响,常见设定包含但不限于:
AddHandler cgi-script .php
Action cgi-script "/cgi-bin/php-cgi.exe"
或
SetHandler application/x-httpd-php-cgi
Action application/x-httpd-php-cgi "/php-cgi/php-cgi.exe"
2. 将PHP脚本文件暴露在外(XAMPP 预设安装设定)。将PHP 脚本文件暴露在CGI 目录下也受此漏洞影响,常见情况包含但不限于:
1) 将php.exe或php-cgi.exe复制到/cgi-bin/目录中。
2) 将PHP 安装目录通过ScriptAlias暴露到外,如:
ScriptAlias /php-cgi/ "C:/xampp/php/"
缓解:
1.对于无法立即升级PHP的用户。
可通过下列Rewrite 规则阻止攻击,请注意这些规则仅作为繁体中文、简体中文及日文语言环境中的暂时性缓解机制,实际操作中建议更新到已修复版本或更改架构。
RewriteEngine On
RewriteCond %{QUERY_STRING} ^%ad [NC]
RewriteRule .? - [F,L]
2.对于XAMPP for Windows 用户。
目前XAMPP 暂未针对该漏洞发布相关更新,如确认XAMPP 不需要使用PHP CGI 功能,可通过修改下列Apache Httpd 配置文档来缓解该漏洞影响:
在对应安装目录下,如C:/xampp/apache/conf/extra/httpd-xampp.conf中,找到相应的行:
ScriptAlias /php-cgi/ "C:/xampp/php/"
将其注释掉,保存后重启服务:
# ScriptAlias /php-cgi/ "C:/xampp/php/"
4.3 通用建议
l 定期更新系统补丁,减少系统漏洞,提升服务器的安全性。
l 加强系统和网络的访问控制,修改防火墙策略,关闭非必要的应用端口或服务,减少将危险服务(如SSH、RDP等)暴露到公网,减少攻击面。
l 使用企业级安全产品,提升企业的网络安全性能。
l 加强系统用户和权限管理,启用多因素认证机制和最小权限原则,用户和软件权限应保持在最低限度。
l 启用强密码策略并设置为定期修改。
4.4 参考链接
https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability/
https://bodhi.fedoraproject.org/updates/FEDORA-2024-52c23ef1ec
https://www.kb.cert.org/vuls/id/520827
https://www.php.net/downloads
五、版本信息
版本 | 日期 | 备注 |
V1.0 | 2024-06-07 | 首次发布 |
六、附录
6.1 公司简介
启明星辰成立于1996年,是由留美博士严望佳女士创建的、拥有完全自主知识产权的信息安全高科技企业。是国内最具实力的信息安全产品、安全服务解决方案的领航企业之一。
公司总部位于北京市中关村软件园启明星辰大厦,公司员工6000余人,研发团队1200余人, 技术服务团队1300余人。在全国各省、市、自治区设立分支机构六十多个,拥有覆盖全国的销售体系、渠道体系和技术支持体系。公司于2010年6月23日在深圳中小板挂牌上市。(股票代码:002439)
多年来,启明星辰致力于提供具有国际竞争力的自主创新的安全产品和最佳实践服务,帮助客户全面提升其IT基础设施的安全性和生产效能,为打造和提升国际化的民族信息安全产业领军品牌而不懈努力。
6.2 关于我们
启明星辰安全应急响应中心已发布1000多个漏洞通告和风险预警,我们将持续跟踪全球最新的网络安全事件和漏洞,为企业的信息安全保驾护航。
关注我们: