CVE-2026-57148 praisonai-platform 0.1.4 still boots on the hardcoded JWT secret dev-secret-change-me (default-open production guard)

Critical 9.8 Published Updated

An unauthenticated attacker can impersonate users or workspace owners by exploiting a hardcoded JWT secret in the default configuration of the PraisonAI platform library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-57148?

CVE-2026-57148 is a critical vulnerability in MervinPraison PraisonAI, published on 15 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

PraisonAI is a multi-agent teams system. Prior to 0.1.6, praisonai_platform/services/auth_service.py falls back to the public dev-secret-change-me HS256 signing key when PLATFORM_JWT_SECRET is unset, while the startup and token-issuance guards are disabled because PLATFORM_ENV also defaults to dev. An unauthenticated attacker can sign a JWT containing an attacker-chosen sub value, and AuthService._verify_token() accepts it as an authenticated identity, enabling user or workspace-owner impersonation when a target identifier is known. This vulnerability is fixed in praisonai-platform 0.1.6.

Weakness: CWE-798, CWE-287, CWE-1188

Which versions are affected by CVE-2026-57148?

3 open source packages ship an affected version, including praisonai-platform.

PackageAffectedFixed in
praisonai-platform PyPIAll versions0.1.6
praisonai-platform PyPIAll versions0.1.6
praisonai-platform PyPIAll versions0.1.6

How do I fix CVE-2026-57148?

Upgrade praisonai-platform to 0.1.6 or later.

Is CVE-2026-57148 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-57148 exists.

Sources

Also known as GHSA-f38v-77qj-h4jq, PYSEC-2026-3525.

Is CVE-2026-57148 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free