从漏洞补丁可以看出,如果检测到字符串开头为"-"字符并且字符串不存在"="字符就设置skip_getopt = 1,那么整个查询字符串将作为CGI的参数进行传递,攻击者可以向后端的php-cgi解析程序提交恶意数据,php-cgi会将恶意数据当做php参数直接执行。
近日,亚信安全CERT监控到安全社区研究人员发布安全通告,披露了PHP CGI Windows平台存在远程代码执行漏洞(CVE-2024-4577)。该漏洞发生在PHP在Window平台运行且使用特定语系的情况下。攻击者可在无需登陆的情况下,构造恶意请求绕过CVE-2012-1823 的保护,执行任意PHP代码。目前厂商官方已发布修复版本。亚信安全CERT建议客...
4. 配置环境变量:将PHP的可执行文件路径添加到系统的PATH环境变量中,这样你就可以在任何目录中运行php-cgi了。打开“控制面板” -> “系统和安全” -> “系统” -> “高级系统设置” -> “环境变量”,在用户变量或系统变量中找到PATH,并在其值中添加PHP的可执行文件路径,例如“C:\php”。 5. 启用FastCGI...
漏洞描述 PHP是一种在服务器端执行的脚本语言。 在PHP 的 8.3.8 版本之前存在命令执行漏洞,由于 Windows 的 "Best-Fit Mapping" 特性,在处理查询字符串时,非 ASCII 字符可能被错误地映射为破折号(-),导致命令行参数解析错误。 当php_cgi 运行在 Windows 平台上,且代码页为繁体中文、简体中文或日文时,攻击者可...
Windows环境下PHP-CGI进程自动关闭的问题可以通过使用进程管理工具(如xxfpm或nssm)来解决。 在Windows环境下,PHP-CGI进程可能会因为处理请求次数过多或其他原因而自动关闭,导致Web服务器无法正确处理PHP请求。针对这个问题,有几种常见的解决方案: 使用xxfpm管理FastCGI进程: xxfpm是一个可以管理FastCGI进程的工具,它可以控...
PHP是一种在服务器端执行的脚本语言,在 PHP 的 8.3.8 版本之前存在命令执行漏洞,由于 Windows 的“Best-Fit Mapping” 特性,在处理查询字符串时,非ASCII字符可能被错误地映射为破折号(-),导致命令行参数解析错误,当 php_cgi 运行在Windows平台上,且代码页为繁体中文、简体中文或日文时,攻击者可以通过特定的查询...
PHP-CGIPHP-CGI(Common Gateway Interface)是一种通过CGI协议运行PHP脚本的方式。它允许Web服务器调用外部PHP程序来处理动态内容请求,将PHP脚本的输出返回给浏览器显示。虽然PHP-CGI提供了对运行环境的更多控制,但性能和扩展性不如现代的PHP-FPM(FastCGI Process Manager)。PHP-FPM如今更常用,因为它效率更高,适合高并...
CVE-2024-4577导致漏洞产生的本质其实是Windows系统内字符编码转换的Best-Fit特性导致的,相对来说PHP在这个漏洞里更像是一个受害者。 由于Windows系统内字符编码转换的Best-Fit特性导致PHP原本的安全限制被绕过,再加上一些特殊的PHP CGI环境配置导致了这个问题,最终导致漏洞利用的算是一些PHP的小技巧。
要在Windows的Apache服务器上配置对PHP和CGI的支持,需要编辑Apache的配置文件(通常是httpd.conf),添加相应的模块加载指令和配置段。具体步骤包括安装PHP和CGI模块,修改配置文件,然后重启Apache服务以应用更改。 在Windows的Apache服务器上配置对PHP和CGI的支持并不难,但需要遵循一定的步骤并确保理解每一步的意义,小编将...
一、漏洞概述近日,绿盟科技CERT监测到网上披露了PHP CGI Windows平台远程代码执行漏洞(CVE-2024-4577),由于PHP 在设计时忽略了Windows系统对字符转换的Best-Fit 特性,用CGI模式运行PHP在Windows平台,且使用…