漏洞概述 该漏洞涉及在远程文件获取过程中,通过私有IP地址进行SSRF(服务器端请求伪造)攻击。具体来说, 和 方法之前将管理员提供的URL直接传递给cURL,没有IP或协议限制,导致攻击者可以利用这些方法通过Media Manager导入进行端口扫描或内部服务访问。 影响范围 受影响的方法: 和 攻击场景:通过Media Manager导入功能 潜在风险:内部服务访问、端口扫描 修复方案 1. 添加 方法: - 该方法用于检查URL是否安全,防止通过私有IP地址进行SSRF攻击。 - 具体实现包括: - 拒绝非HTTP(S)协议的URL - 接受已解析的裸IP地址(无DNS查找) - 正确处理带括号的IPv6主机 - 解析主机(A + AAAA)并拒绝任何私有、环回、链路本地或保留的IP地址 - 通过 和 过滤 2. 限制cURL协议: - 将 和 限制为HTTP/HTTPS - 防止通过重定向绕过限制 3. 允许内部/私有站点访问: - 通过定义 为 来允许内部/私有站点访问 4. 测试覆盖: - 测试IPv4映射的IPv6地址(如 ) - 测试十进制/十六进制编码的私有IP(如 对应 ) - 测试非HTTP协议和 / 的集成路径 POC代码 总结 该漏洞通过限制URL的安全性和cURL协议,有效防止了通过私有IP地址进行SSRF攻击。修复方案包括添加URL安全检查、限制cURL协议、允许内部站点访问以及全面的测试覆盖。