CVE-2026-57147
Received Received - Intake

Authentication Bypass in PraisonAI Platform via JWT Secret

Vulnerability report for CVE-2026-57147, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-15

Last updated on: 2026-09-15

Assigner: GitHub, Inc.

Description

PraisonAI is a multi-agent teams system. Prior to 0.1.6, praisonai_platform/services/auth_service.py assigns the public dev-secret-change-me value to JWT_SECRET when PLATFORM_JWT_SECRET is unset, and its production guard does not run when PLATFORM_ENV is also unset because that setting defaults to dev. A remote unauthenticated attacker can mint an HS256 token with an arbitrary sub and email, and the platform's AuthService._verify_token() and get_current_user dependency accept the forged identity for protected API routes. This vulnerability is fixed in praisonai-platform 0.1.6.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-15
Last Modified
2026-09-15
Generated
2026-09-15
AI Q&A
2026-09-15
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 4 associated CPEs
Vendor Product Version / Range
praisonai praisonai_platform to 0.1.6 (inc)
mervinpraison praisonai_platform 0.1.6
mervinpraison praisonai_platform to 0.1.5 (exc)
mervinpraison praisonai_platform From 0.1.6 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-798 The product contains hard-coded credentials, such as a password or cryptographic key.
CWE-1188 The product initializes or sets a resource with a default that is intended to be changed by the product's installer, administrator, or maintainer, but the default is not secure.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-57147 is a critical vulnerability in PraisonAI versions 0.1.4 and earlier. It involves a hardcoded default JWT secret ('dev-secret-change-me') used when the PLATFORM_JWT_SECRET environment variable is unset. The system's security guard fails to block this because PLATFORM_ENV defaults to 'dev' when unset, allowing production deployments to use the insecure default. Attackers can forge JWT tokens signed with this known secret, bypassing authentication and impersonating any user.

Detection Guidance

Check if your PraisonAI deployment uses the default JWT secret 'dev-secret-change-me' by inspecting environment variables and auth_service.py configuration. Verify if PLATFORM_ENV is set and if PLATFORM_JWT_SECRET is explicitly configured. Look for unauthorized JWT tokens in logs or network traffic.

Impact Analysis

An attacker can exploit this to gain unauthorized access to all protected API routes, including workspace and user management functions. They can impersonate any user, potentially accessing sensitive data, modifying system configurations, or performing administrative actions without authentication. The impact includes complete system compromise due to the high CVSS score of 9.8.

Compliance Impact

This vulnerability likely violates compliance requirements for data protection and access control. GDPR mandates strict authentication and authorization controls to protect personal data, while HIPAA requires safeguards to ensure only authorized users access protected health information. The flaw enables unauthorized access, potentially leading to data breaches and non-compliance with these regulations.

Mitigation Strategies

Upgrade to praisonai-platform version 0.1.6 or later. Ensure PLATFORM_ENV is explicitly set to 'dev' if using development mode. Set PLATFORM_JWT_SECRET to a strong, unique value in production. Review and rotate all JWT secrets if compromised.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-57147. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart