关键信息 漏洞描述 CVE编号: CVE-2025-51475 漏洞类型: SuperAGI AFO in File Upload Endpoint 原因: 由于对用户提供的文件名进行不充分的清理,导致SuperAGI的文件上传功能中存在AFO(任意文件覆盖)漏洞。实现检查文件扩展名,但未能中和目录遍历序列(如 ),允许攻击者在预期目录之外写入文件。 漏洞细节 位置: 端点在 文件中。 问题: 文件路径使用 构建,具有基本目录和用户提供的文件名,没有强制执行路径约束。尽管扩展名已验证,但攻击者可以将有效扩展名(例如 )附加到恶意文件名(如 )以绕过检查。 文件写入: 使用Python的 以二进制写模式( )写入文件,允许覆盖现有文件。基本目录从 检索,不强制执行路径包含,使应用程序可写文件系统中的任何地方都可以任意覆盖。 源 - 污染分析 1. 源: 在 - 直接从用户上传接收文件和文件名输入。 2. 中间件: 在 - 解析基本存储目录,不进行规范化或验证。 3. 污染: 在 - 使用未清理的路径写入文件,允许路径遍历。 概念验证 创建一个本地文件并确保它具有有效的扩展名之一。 使用本地文件作为参数创建新的“资源”。 影响 覆盖文件系统上的任意文件。 绕过应用程序逻辑和控制。 如果关键文件被覆盖,则提升权限或破坏服务。 详细信息 仓库: https://github.com/TransformerOptimus/SuperAGI 版本: 0.0.14