CVE-2026-39843Plane 开源项目管理工具在 0.28.0 至 1.3.0 之前版本中存在服务端请求伪造(SSRF)漏洞。由于对先前漏洞(GHSA-jcc6-f9v6-f7jw)的修复不完整,经过身份验证的低权限攻击者可通过“添加链接”功能,提交一个包含重定向至内网 IP 的链接标签的 HTML 页面。尽管主页面 URL 的重定向受到验证,但图标获取路径未受限制,仍遵循默认重定向规则。成功利用此漏洞可导致内网信息泄露,CVSS 评分为 7.7(高危)。
该漏洞源于 Plane 应用在处理用户提交的链接时对 favicon 获取逻辑的不严谨修复。虽然系统验证了主页面 URL 的重定向以防止 SSRF,但 `fetch_and_encode_favicon()` 函数在获取网站图标时,直接使用了 Python `requests` 库的 `get` 方法且未禁用 `allow_redirects` 参数(默认为 True)。攻击者可构造一个恶意的 HTML 页面,其中包含 `<link rel="icon" href="http://attacker-controlled-redirect">`,并将该重定向指向内网敏感地址(如 http://169.254.169.254/latest/meta-data/)。当低权限用户通过 Plane 的“Add link”功能提交该链接时,服务器会自动抓取并编码图标。在此过程中,`requests.get` 会跟随重定向请求内网资源,导致服务器发起对内网 IP 的请求,从而实现 SSRF 攻击,读取敏感服务端数据。