关键信息 漏洞名称: OpenRefine Zip Slip Vulnerability CVE编号: CVE-2023-46751 CVSS评分: 9.8 (严重) 影响版本: OpenRefine 3.6.0 及更早版本 修复版本: OpenRefine 3.6.1 漏洞介绍 OpenRefine 是一个开源的数据清理和转换工具,广泛用于数据处理任务。该工具允许用户导入各种格式的数据文件,包括 ZIP 文件。然而,在处理 ZIP 文件时存在一个严重的安全漏洞,即 Zip Slip 漏洞。 漏洞影响 攻击者可以通过构造恶意的 ZIP 文件,利用 Zip Slip 漏洞在目标系统上执行任意代码或覆盖关键文件。这可能导致数据泄露、系统崩溃或被完全控制。 技术细节 漏洞发现 SonarQube 团队在分析 OpenRefine 的源代码时发现了这一漏洞。具体来说,当 OpenRefine 解压 ZIP 文件时,没有正确验证解压路径,导致攻击者可以利用特制的 ZIP 文件进行路径遍历攻击。 漏洞利用 攻击者可以创建一个包含特殊路径的 ZIP 文件,例如 ,并将其上传到 OpenRefine。当 OpenRefine 解压该文件时,会将内容写入目标系统的任意位置,从而覆盖关键文件或执行恶意代码。 修复措施 OpenRefine 团队在 3.6.1 版本中修复了这一漏洞。修复措施包括: 1. 添加路径验证逻辑,确保解压路径不会超出预期范围。 2. 更新依赖库,使用更安全的 ZIP 解压方法。 时间线 2023-09-01: 漏洞被发现并报告给 OpenRefine 团队。 2023-09-15: OpenRefine 团队确认漏洞并开始修复工作。 2023-10-01: OpenRefine 3.6.1 版本发布,修复了该漏洞。 总结 Zip Slip 漏洞是一个常见的安全问题,特别是在处理用户上传的 ZIP 文件时。OpenRefine 的这一漏洞提醒开发者在处理文件解压操作时必须进行严格的路径验证,以防止路径遍历攻击。及时更新软件和依赖库是防范此类漏洞的有效手段。