CVE-2007-4559 — 神龙十问 AI 深度分析摘要
本页是神龙十问 AI 深度分析的
摘要版。完整版(更长回答、追问、相关漏洞)需
登录查看 →Q1这个漏洞是什么?(本质+后果)
🚨 **本质**:Python `tarfile` 模块的 `extract` 和 `extractall` 函数存在**路径遍历**漏洞。 💥 **后果**:攻击者可通过 TAR 包中的 `..` 序列,将文件解压到**任意目录**,覆盖系统关键文件。
Q2根本原因?(CWE/缺陷点)
🔍 **缺陷点**:未对 TAR 包内的文件名进行严格的**路径规范化**检查。 📉 **CWE**:数据中未提供具体 CWE ID,但属于典型的**路径遍历 (Path Traversal)** 缺陷。
Q3影响谁?(版本/组件)
📦 **组件**:Python 标准库中的 **`tarfile` 模块**。 📅 **时间**:2007年8月28日披露,影响 Python v3.11.4 之前的版本。
Q4黑客能干啥?(权限/数据)
💣 **黑客能力**: - **文件覆盖**:写入恶意脚本或配置文件。 - **持久化**:注入 Rootkit 或 Cryptominer(如 Polemarch 案例)。 - **权限提升**:通过覆盖系统工具获取 Root 权限。
Q5利用门槛高吗?(认证/配置)
🔓 **门槛**:**低**。 - **认证**:通常无需认证,只需上传或处理恶意 TAR 文件。 - **配置**:依赖应用是否直接调用 `tarfile.extract` 且未加防护。
Q6有现成Exp吗?(PoC/在野利用)
🛠️ **现成 Exp**:**有**。 - **Creosote**:自动扫描代码中漏洞的 POC 工具。 - **Polemarch Exploit**:针对特定服务器的完整利用链(含挖矿/Rootkit)。 - **Tarpioka**:CTF 题目中的利用演示。
Q7怎么自查?(特征/扫描)
🔎 **自查方法**: 1. **代码扫描**:使用 AST 解析工具(如 Creosote)搜索 `tarfile` 模块调用。 2. **特征匹配**:检查代码中是否直接调用 `extract`/`extractall` 而未做路径校验。 3. **依赖检查**:确认 Python 版本是否低于 v3.11.4。
Q8官方修了吗?(补丁/缓解)
🛡️ **官方修复**:**已修复**。 - **Python 3.11.4+**:引入了 **`extraction filter`** 功能,强制在写入前使用 `os.path.realpath()` 验证路径。 - **Trellix 补丁**:2023年修复了 61,000+ 开源项目,但部分补丁可被符号链接绕过。
Q9没补丁咋办?(临时规避)
🚧 **临时规避**: - **手动校验**:在调用 `extract` 前,手动检查文件名是否包含 `..` 或 `/`。 - **限制目录**:强制解压到特定白名单目录,并使用 `os.path.realpath` 比对。 - **升级**:尽快升级 Python 至 v3.11.4 或更高版本。
Q10急不急?(优先级建议)
⚡ **优先级**:**高**。 - **历史久**:虽为老漏洞,但影响范围广(61k+ 项目)。 - **危害大**:可导致完全控制服务器。 - **易利用**:无需特殊权限,攻击成本低。建议立即排查并升级。