💡
原文中文,约4200字,阅读约需10分钟。
📝
内容提要
2024年8月,@Orange发布了他即将在2024年8月Black Hat USA公开的议题《Confusion Attacks: Exploiting Hidden Semantic Ambiguity in Apache HTTP Server!》。漏洞通报指出存在于windows特殊场景下的PHP CGI远程代码执行漏洞。漏洞利用条件是必须是Windows环境,并且使用繁体中文、简体中文或日文语言系统。漏洞影响范围包括PHP 8.3 < 8.3.8、PHP 8.2 < 8.2.20和PHP 8.1 < 8.1.29等版本。漏洞利用条件还包括以CGI模式运行的PHP环境和XAMPP默认配置。漏洞导致最终的任意代码执行。
🎯
关键要点
- 2024年8月,@Orange将在Black Hat USA公开议题《Confusion Attacks: Exploiting Hidden Semantic Ambiguity in Apache HTTP Server!》。
- 存在于Windows特殊场景下的PHP CGI远程代码执行漏洞,CVE-2024-4577。
- 漏洞影响PHP 8.3 < 8.3.8、PHP 8.2 < 8.2.20和PHP 8.1 < 8.1.29等版本。
- 漏洞利用条件包括必须在Windows环境下,使用繁体中文、简体中文或日文语言系统。
- Windows系统内字符编码转换的Best-Fit特性导致PHP的安全限制被绕过。
- 漏洞利用需要以CGI模式运行的PHP环境,且XAMPP的默认配置受到影响。
- 通过传递特定参数(如%ad)可以构成参数注入,导致任意代码执行。
- XAMPP默认配置将PHP的执行程序暴露在外,增加了安全风险。
- PHP的cgi.force_redirect配置可以被绕过,导致安全隐患。
❓
延伸问答
CVE-2024-4577漏洞的影响范围是什么?
该漏洞影响PHP 8.3 < 8.3.8、PHP 8.2 < 8.2.20和PHP 8.1 < 8.1.29等版本,理论上影响所有PHP版本。
利用CVE-2024-4577漏洞需要满足哪些条件?
必须在Windows环境下,使用繁体中文、简体中文或日文语言系统,并以CGI模式运行PHP环境。
CVE-2024-4577漏洞是如何被利用的?
通过传递特定参数(如%ad),可以构成参数注入,导致任意代码执行。
XAMPP的默认配置如何影响CVE-2024-4577漏洞?
XAMPP的默认配置将PHP的执行程序暴露在外,增加了安全风险,且其配置允许直接调用php-cgi.exe。
CVE-2024-4577漏洞的根本原因是什么?
漏洞的根本原因是Windows系统内字符编码转换的Best-Fit特性,导致PHP的安全限制被绕过。
如何防范CVE-2024-4577漏洞?
建议避免在Windows环境下使用CGI模式运行PHP,或及时更新到不受影响的PHP版本。
➡️