漏洞概述 该 Pull Request 修复了 路径下的 SSRF (Server-Side Request Forgery) 漏洞。攻击者可以通过控制 参数,利用该接口访问内部服务、私有网络资源或云元数据端点,甚至通过重定向链(redirect chaining)绕过防护。 影响范围 涉及 文件中的 接口。 修复方案 1. 协议限制:将代理协议限制为仅 和 。 2. URL 验证:在发出任何出站请求前,验证并标准化目标 URL。 3. IP/主机拦截:阻止直接访问 、 、 (私有IP)、 、 、 以及常见的元数据主机名。 4. DNS 解析检查:使用 DNS 解析主机名,如果解析出的 IP 是私有或本地的,则阻止请求。 5. 重定向控制:禁用自动重定向,强制对每个重定向跳(per-hop)进行验证,并设置最大重定向限制。 6. 错误处理:对无效或阻止的目标返回 错误,而非通用的服务器错误。 7. 代码实现细节: 新增 进行 URL 解析护栏。 新增 进行主机/IP 安全检查(使用 和 )。 * 新增 验证每个重定向跳。 验证/测试用例 (Verification) 截图中包含以下验证用例,展示了攻击尝试被拦截的情况: