漏洞概述 漏洞类型:符号链接/目录遍历路径绕过(Symlink/Path Traversal Bypass) 漏洞编号:GHSA-gB7r-2gJ3-J9Sw, GHSA-gB2r-p725-3x07 核心问题:TinaCMS 的媒体端点(media endpoints)和 FilesystemBridge 中的路径验证仅使用简单的字符串检查( 、 ),未正确处理符号链接(symlinks)。攻击者可通过在允许目录内创建指向目录外的符号链接,绕过路径验证,实现对文件系统任意位置的读写操作。 --- 影响范围 受影响组件: - 媒体端点(media endpoints) - FilesystemBridge(get、put、delete、glob 操作) 攻击场景: - 通过符号链接或目录连接(junction)绕过媒体根目录限制 - 读取/写入/删除媒体根目录外的敏感文件 - 开发服务器监听非本地地址时风险更高(无认证且暴露于网络) --- 修复方案 核心修复逻辑 1. 新增 函数:递归解析符号链接,获取真实路径 2. 新增 函数:验证解析后的路径是否位于基础目录内 3. 路径验证流程: 解析 → 重新验证包含关系 关键代码 开发服务器安全增强 --- 测试用例(POC)