CVE-2024-56362:
Navidrome Stores JWT Secret in Plaintext in navidrome.db
7.1
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.02237%
CWE
Published
12/23/2024
Updated
1/15/2025
KEV Status
No
Technology
Go
Technical Details
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
github.com/navidrome/navidrome | go | <= 0.53.3 | 0.54.1 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from cleartext storage of the JWT secret. The createJWTSecret
function in server/initial_setup.go
was directly responsible for writing the secret to the database in plaintext during initial setup. The auth.Init
function in core/auth/auth.go
perpetuated the risk by using the plaintext secret without encryption/decryption mechanisms. The commit diff shows these functions were modified/removed in the patch (replaced with encrypted storage/retrieval), confirming their role in the vulnerability.