Impact
SigNoz servers from version 0.8.0 up to but not including 0.143.0 use an empty string as the default key for signing and verifying JWT session tokens. Because the configuration validation does not reject this empty value, an attacker who is able to connect to the API can forge a valid session token for any user, including administrators, by signing the user id, organization id and email claims with an empty HMAC key. This flaw is a CWE‑1188 weakness in the authentication subsystem.
Affected Systems
Any deployment of SigNoz before the 0.143.0 release that does not explicitly set the SIGNOZ_TOKENIZER_JWT_SECRET (or its deprecated counterpart SIGNOZ_JWT_SECRET) is affected. The vulnerability resides in the default JWT tokenizer provider that signs tokens with an empty secret when none is configured.
Risk and Exploitability
The flaw carries a CVSS score of 9.2, indicating high severity. The EPSS score is not available, so the exact exploitation probability is uncertain, and the vulnerability is not listed in the CISA KEV catalogue. An unauthenticated attacker can learn the organization identifier by querying /api/v2/sessions/context, then forge a session token for any known user ID and subsequently exchange it for a refresh token using /api/v2/sessions/rotate. The resulting refresh token grants continued access for its default 30‑day lifespan and cannot be revoked, enabling persistent unauthorized use of the system.
OpenCVE Enrichment