Know every vulnerabilitybefore it knows you.
DevGuard continuously monitors your dependencies and alerts you when CVEs like this one affect your stack — with real-time threat intelligence built for developers.
GHSA-mv7p-34fv-4874
No affected components available
Impact
CVE-2025-13877 is an authentication bypass vulnerability caused by insecure default JWT key usage in NocoBase Docker deployments.
Because the official one-click Docker deployment configuration historically provided a public default JWT key, attackers can forge valid JWT tokens without possessing any legitimate credentials. By constructing a token with a known userId (commonly the administrator account), an attacker can directly bypass authentication and authorization checks.
Successful exploitation allows an attacker to:
- Bypass authentication entirely
- Impersonate arbitrary users
- Gain full administrator privileges
- Access sensitive business data
- Create, modify, or delete users
- Access cloud storage credentials and other protected secrets
The vulnerability is remotely exploitable, requires no authentication, and public proof-of-concept exploits are available.
This issue is functionally equivalent in impact to other JWT secret exposure vulnerabilities such as CVE-2024-43441 and CVE-2025-30206.
Deployments that used the default Docker configuration without explicitly overriding the JWT secret are affected.
Patches
✅ The vulnerability has been fully patched through a secure JWT key management redesign.
The remediation enforces the following security guarantees:
- JWT secrets are no longer allowed to fall back to public default values.
- Secrets must either:
- Be explicitly provided by the user, or
- Be securely generated using cryptographically strong randomness at first startup.
- Generated secrets are persisted securely with restricted filesystem permissions.
- Invalid or weak secret values immediately trigger a startup failure.
✅ Fixed Versions:
- NocoBase ≥ 1.9.23
- NocoBase ≥ 1.9.0-beta.18
- NocoBase ≥ 2.0.0-alpha.52
Workarounds
If upgrading is not immediately possible, the following temporary mitigations must be performed to reduce risk:
- Explicitly set a strong, randomly generated JWT secret via environment variables
APP_KEY. - Restart all running NocoBase instances so the new secret takes effect.
- Invalidate all existing JWT sessions, forcing complete user re-authentication.
- Verify that no default secret values are present in:
docker-compose.yml.envfiles- Kubernetes Secrets
References
-
CVE Record: CVE-2025-13877
-
VulDB Entry: https://vuldb.com/?id.334033
-
Public Exploit Proof:
https://gist.github.com/H2u8s/f3ede60d7ecfe598ae452aa5a8fbb90d -
Affected Default Docker Configurations:
- https://github.com/nocobase/nocobase/blob/main/docker/app-mysql/docker-compose.yml#L13
- https://github.com/nocobase/nocobase/blob/main/docker/app-mariadb/docker-compose.yml#L13
- https://github.com/nocobase/nocobase/blob/main/docker/app-postgres/docker-compose.yml#L11
- https://github.com/nocobase/nocobase/blob/main/docker/app-sqlite/docker-compose.yml#L11
-
Official Deployment Documentation:
- https://docs.nocobase.com/welcome/getting-started/installation/docker-compose
- https://v2.docs.nocobase.com/get-started/installation/docker
The vulnerability can be exploited over the network without needing physical access. It is difficult for an attacker to exploit this vulnerability and may require special conditions. An attacker does not need any special privileges or access rights. No user interaction is needed for the attacker to exploit this vulnerability.
Limited exploitation activity has been observed. Close monitoring and planned remediation are recommended.
Probability that this vulnerability will be exploited in the wild within the next 30 days.
We did not find any exploit available. Neither in GitHub repositories nor in the Exploit-Database.
- CVE-2025-13877Alias
- EUVD-2025-200266Alias
Browse More
Continuously monitor your dependencies and get alerted when vulnerabilities like this one affect your stack.
Checkout DevGuard