CVE-2024-50340
— 神龙十问 AI 深度分析摘要
CVSS 7.3 · High
本页是神龙十问 AI 深度分析的
摘要版。完整版(更长回答、追问、相关漏洞)需
登录查看 →
Q1这个漏洞是什么?(本质+后果)
🚨 **本质**:Symfony 框架允许 PHP 应用与全局状态分离时存在注入风险。
💥 **后果**:攻击者可通过构造特殊查询字符串,**篡改**应用的运行环境(如 `APP_ENV`)和调试模式(`APP_DEBUG`)。
Q2根本原因?(CWE/缺陷点)
🔍 **CWE**:CWE-74(外部组件控制状态)。
📍 **缺陷点**:`SymfonyRuntime` 在处理非 SAPI 运行时环境时,错误地读取了 `$_SERVER['argv']` 中的值来设置环境变量。
Q3影响谁?(版本/组件)
📦 **厂商**:Symfony。
📅 **受影响版本**:
- v5.4.46 之前
- v6.4.14 之前
- v7.1.7 之前
⚠️ 涉及组件:`symfony/runtime`。
Q4黑客能干啥?(权限/数据)
🕵️ **黑客能力**:
- **修改环境**:强制应用进入开发或测试环境。
- **开启调试**:启用 `APP_DEBUG`,可能导致敏感信息泄露(堆栈跟踪、配置细节)。
- **权限**:虽不直接提权,但可破坏应用逻辑完整性。
Q5利用门槛高吗?(认证/配置)
🚧 **门槛**:中等。
✅ **无需认证**:远程利用。
⚙️ **关键配置**:PHP 配置中 `register_argc_argv` 必须为 **On**(默认通常开启)。
Q6有现成Exp吗?(PoC/在野利用)
📜 **PoC 存在**:
- GitHub 上有具体利用代码(`Nyamort/CVE-2024-50340`)。
- Nuclei 模板已更新,可自动化扫描。
🌍 **在野利用**:数据未明确提及大规模在野,但 PoC 已公开。
Q7怎么自查?(特征/扫描)
🔎 **自查方法**:
1. 检查 PHP `php.ini` 中 `register_argc_argv` 状态。
2. 扫描请求中是否包含特殊构造的 Query String 试图覆盖环境变量。
3. 使用 Nuclei 模板 `http/cves/2024/CVE-2024-50340.yaml` 进行扫描。
Q8官方修了吗?(补丁/缓解)
🛡️ **官方已修复**:
- 提交:`a77b308c3f179ed7c8a8bc295f82b2d6ee3493fa`
- 修复逻辑:新版本 `SymfonyRuntime` 已**忽略**非 SAPI 运行时的 `argv` 值。
- 建议升级至上述提到的安全版本。
Q9没补丁咋办?(临时规避)
🛑 **临时规避**:
- **禁用配置**:在 `php.ini` 中将 `register_argc_argv` 设置为 **Off**。
- **WAF 规则**:拦截尝试修改 `APP_ENV` 或 `APP_DEBUG` 的异常请求参数。
Q10急不急?(优先级建议)
⚡ **优先级**:中高。
💡 **理由**:无需认证即可远程利用,且可能导致调试模式开启引发信息泄露。若生产环境未打补丁且 PHP 配置默认,风险较高。建议尽快升级。