PHP for Windows 安全漏洞CVE-2024-4577分析
Devcore 公司首席安全研究员 Orange Tsai在2024年05月07日发现一个新的 RCE 漏洞,追踪编号为CVE-2024-4577。
资料显示,编号为 CVE-2024-4577的安全漏洞会危及自 5.x 版以来所有版本,因此可能对全球大量服务器产生影响。
Devcore 公司将该参数注入漏洞及时报告给 PHP 官方团队,PHP 项目维护团队已于2024年06月06日发布修复补丁。
安全人员表示,PHP 开发团队可能没有注意在Windows系统内进行编码转换的 Best-Fit 功能在转换实现中存在缺陷。
攻击者可利用该缺陷通过构造特殊的字符序列绕过CVE-2012-1823防护措施,向远程PHP服务器发起参数注入攻击。
在 Windows 上以 CGI 模式使用 PHP,尤其是使用 “Best-Fit”功能的服务器环境,很容易被黑客利用该漏洞发起攻击。
即便PHP未配置为CGI 模式,只要PHP可执行文件(如 php.exe 或 php-cgi.exe)位于服务器可访问目录仍可能被利用。
当服务器被黑客通过参数注入攻击,那后果可想而知了,攻击者可以轻松的实现在远程 PHP 服务器上执行任意代码。
PHP 项目维护团队建议所有使用 PHP for Windows 的用户,尽快更新至前天发布的 8.3.8、8.2.20 以及 8.1.29 版本。
Shadowserver 基金会发布公告,表示已检测到有黑客开始扫描存在该漏洞的服务器,因此建议受影响用户尽快升级。
图源 Devcore X
作为从初中就开始接触 Windows 系统的用户,笔者同样习惯于使用 Windows 服务器环境,毕竟使用起来非常顺手。
对黑客而言,没有经过强力防火墙配置的 Windows 服务器环境攻击起来同样非常丝滑,我的几台服务器都被攻陷过。
所以之后我的服务器全部换成了 Linux 搭配国产面板,虽然曾因某漏洞被省公安厅通报,但被攻陷的频率大大降低。
所以个人建议,如果你没有能力去配置好 Windows 服务器的防火墙配置,还是转战 Linux 吧,国产面板真的非常爽。
PHP 漏洞编号:CVE-2024-4577
披露时间:2024 年 6 月 6 日
受影响版本:
PHP 8.3 < 8.3.8
PHP 8.2 < 8.2.20
PHP 8.1 < 8.1.29
所有安装在 Windows 操作系统上的 PHP 版本
漏洞影响:
攻击者可在受影响的服务器上远程执行任意代码。
默认情况下,所有版本的 XAMPP for Windows 安装易受攻击。
漏洞利用难易程度取决于 Windows 系统语言环境,已知在繁体中文、简体中文和日语环境下可直接执行任意代码。
缓解措施:
建议所有升级到最新版本的 PHP:8.3.8、8.2.20 和 8.1.29,如无法升级可暂时利用 Rewrite Rules 阻止攻击。
建议将 PHP CGI 架构迁移到更安全的架构,例如 Mod-PHP、FastCGI 或 PHP-FPM。
参考资料:
https://www.bleepingcomputer.com/news/security/kaspersky-offers-free-security-software-for-six-months-in-us-goodbye/