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 breakdown
CVSS 3.1
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Affected products
- MervinPraison / PraisonAI< 4.6.51 – < 4.6.51
- MervinPraison / praisonai-platform< 0.1.6 – < 0.1.6
References
- VENDOR_ADVISORYhttps://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-cwj8-7gp2-ggcw
- PATCHhttps://github.com/MervinPraison/PraisonAI/pull/1793
- PATCHhttps://github.com/MervinPraison/PraisonAI/commit/e0fb8e7dd1ee6759c18ed07f436c21dbd9c20747
- PATCHhttps://github.com/MervinPraison/PraisonAI/releases/tag/v4.6.51
Updated 42m ago · 8 sources