关键信息 漏洞概述 漏洞名称: Navidrome Transcoding Permission Bypass Vulnerability CVE ID: CVE-2025-48948 严重性: Critical 影响版本 受影响版本: <= 0.55.2 修复版本: 0.56.0 漏洞描述 摘要: Navidrome 中存在权限验证缺陷,允许任何已认证用户绕过授权检查并执行仅限管理员的转码配置操作,包括创建、修改和删除转码设置。 详细信息: - Navidrome 支持转码功能,默认禁用,但应仅限管理员进行配置操作。然而,应用程序在处理转码配置请求时未能正确验证用户是否具有管理权限。 - 漏洞存在于管理转码设置的 API 端点中,即使 JWT 令牌明确指示用户不是管理员("admin": false),应用程序也会处理这些请求。 受影响的端点 POST /api/transcoding (创建转码配置) PUT /api/transcoding/:id (更新转码配置) DELETE /api/transcoding/:id (删除转码配置) GET /api/transcoding (列出转码配置) PoC 1. 设置启用转码的 Navidrome。 2. 以普通用户身份登录(非管理员)。 3. 发送以下 HTTP 请求: 4. 尽管 JWT 令牌明确指示用户不是管理员("admin": false),请求仍会成功。 5. 使用管理员凭据可以执行相同操作,确认未进行授权检查。 影响 权限提升: 普通用户可以执行仅限管理员的操作。 系统配置篡改: 未经授权的用户可以修改转码设置,可能影响系统性能或功能。 潜在命令注入: 由于转码设置包含命令参数,如果未正确清理,可能导致命令注入。 威胁模型 在管理员可信而普通用户不可信的环境中,此漏洞代表显著的安全风险。