关键信息 漏洞概述 漏洞类型: 盲SSRF (Blind SSRF) 受影响的包: webfinger.js (npm) 受影响版本: <= 2.8.0 修复版本: 2.8.1 严重性: 中等 (Moderate) CVE ID: CVE-2025-54590 描述 问题: 库在处理用户地址时,没有正确防止对本地主机和局域网的访问。这使得攻击者可以通过精心构造的地址访问本地服务。 具体问题: - 库仅通过检查以 "localhost" 开头且以端口号结尾的字符串来判断是否为本地主机,忽略了其他形式的本地地址(如 "127.0.0.1" 或 "localhost:1234/abc")。 - 函数确定主机的方式允许访问主机上的任何路径,而不仅仅是 "/.well-known/..." 路径。 PoC 和复现步骤 1. 启动本地HTTP服务器监听端口1234,并包含一个 "secret.txt" 文件。 2. 运行以下命令: 3. 查看Python HTTP服务器控制台,确认请求了 "secret.txt" 文件。 影响 任何使用该库的用户都可能被诱导发送GET请求到受控的主机、路径和端口,从而查询运行在实例主机或本地网络上的服务,甚至执行盲SSRF攻击,尝试利用目标机器上运行的已知易受攻击的本地服务。 参考 漏洞由JFrog漏洞研究团队的Ori Hollander发现。