目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1000

100.0%

CVE-2020-28949 — 神龙十问 AI 深度分析摘要

Q1这个漏洞是什么?(本质+后果)

🚨 **本质**:PEAR Archive_Tar 库的 **文件名净化逻辑缺陷**。仅防护了 phar 攻击,漏掉了其他 stream-wrapper(如 file://)。<br>⚠️ **后果**:攻击者可利用文件流包装器 **覆盖服务器任意文件**,导致系统被控或数据泄露。

Q2根本原因?(CWE/缺陷点)

🔍 **缺陷点**:**Filename Sanitization(文件名净化)不完整**。<br>📉 **CWE**:数据未提供具体 CWE ID,但属于典型的 **路径遍历/文件包含** 类逻辑漏洞。

Q3影响谁?(版本/组件)

📦 **受影响组件**:**PEAR Archive_Tar**。<br>📅 **版本范围**:**1.4.10 及之前版本**。<br>🌐 **常见场景**:Drupal 等依赖该 PHP 库的项目。

Q4黑客能干啥?(权限/数据)

💀 **黑客能力**:<br>1. **任意文件写入**:通过 file:// 等 wrapper 覆盖关键文件。<br>2. **权限提升**:若覆盖配置文件或脚本,可获取 **服务器控制权**。<br>3. **数据篡改**:修改网站源码或数据文件。

Q5利用门槛高吗?(认证/配置)

🚪 **利用门槛**:<br>✅ **无需认证**(通常情况)。<br>⚙️ **依赖配置**:需应用调用 Archive_Tar 处理包含恶意路径的 tar 包。<br>📉 **难度**:中等,取决于目标是否直接暴露 tar 包处理功能。

Q6有现成Exp吗?(PoC/在野利用)

📜 **PoC/Exp**:<br>⚠️ **数据中未提供** 公开 PoC 链接。<br>🔎 **在野利用**:数据未明确提及大规模在野利用,但 **Drupal 官方已发布安全公告** (SA-CORE-2020-013),暗示存在实际风险。

Q7怎么自查?(特征/扫描)

🔎 **自查方法**:<br>1. **代码扫描**:搜索项目中是否使用 `Archive_Tar` 类。<br>2. **版本检查**:确认 PHP 依赖库版本是否 **≤ 1.4.10**。<br>3. **日志审计**:检查是否有异常的 tar 包解压操作或文件覆盖日志。

Q8官方修了吗?(补丁/缓解)

🛡️ **官方修复**:<br>✅ **已修复**。<br>📢 **参考**:Drupal 发布 SA-CORE-2020-013;Debian (DSA-4817) 和 Fedora 均发布了更新补丁。<br>🔧 **建议**:升级至修复后的版本。

Q9没补丁咋办?(临时规避)

🚧 **临时规避**:<br>1. **输入过滤**:在调用 Archive_Tar 前,严格校验 tar 包内的文件名,拒绝包含 `://` 或 `../` 的路径。<br>2. **权限最小化**:限制运行 PHP 进程的用户对文件系统的写入权限。<br>3. **禁用 Wrapper**:若可能,禁用 `file://` 等危险 stream-wrapper。

Q10急不急?(优先级建议)

🔥 **优先级**:**高 (High)**。<br>💡 **理由**:涉及 **任意文件写入**,后果严重。Drupal 等主流 CMS 受影响,且已有官方补丁。建议 **立即升级** 或应用临时规避措施。