关键信息总结 漏洞概述 CVE编号: CVE-2024-40120 漏洞类型: SQL注入 (CWE-89) 影响版本: SeaweedFS < 3.69 影响范围 受影响组件: SeaweedFS Filer Server 使用 mysql 作为 filermeta 数据库 受影响文件: weed/filer/abstract_sql/abstract_sql_store.go 受影响对象: AbstractSqlStore 漏洞原因 用户输入被拼接到 SQL 语句中,导致 SQL 注入。 代码分析 关键方法: , , , , 示例代码: 概念验证 (PoC) 目标: AbstractSqlStore.ListDirectoryPrefixedEntries 测试环境: - MySQL 数据库用户: root - 测试数据库: seaweedfs - 表结构: 包含 , , , 字段 步骤: 1. 创建名为 的新文件夹 2. 访问特定构造的 URL 触发 SQL 注入 结果 成功触发 SQL 注入,返回预期结果。 发现者 Tencent YunDing Security Lab 参考链接 seaweedfs issue #5710 seaweedfs commit 9ac1023362000f6e8e58c9d278653f5926a0e90e seaweedfs 3.69