CSSA Exclusive Early Warning
10.0 Critical
happy component uses a hard-coded key leading to remote identity forgery and account takeover
An attacker uses the fixed development key published in the repository to derive valid authentication-signing material and construct a valid token that contains an arbitrary user ID. Because the server validates the token without querying session records and directly trusts the identity information inside the token, the attacker can impersonate an account, access sensitive data or decrypt stored third-party service credentials, compromising system confidentiality and integrity.
Component
happy is a backend service component that provides server-side encryption, persistent token generation and HMAC voice identification. Its architecture depends on a centralized HANDY_MASTER_SECRET as the core security primitive, aiming to unify identity authentication, data protection and third-party credential management across modules so that business logic can flow securely.
Type
Use of Hard-coded Cryptographic Key (CWE-321)
Repo
Remediation
- Remove the hard-coded key; generate a unique high-entropy random key for each deployment; inject configuration through a protected key-management system; bind authentication tokens to server-side state so they can be revoked, and manage key lifecycle and purpose isolation.
CSSA Exclusive Early Warning
10.0 Critical
PraisonAI AgentApproval instruction injection bypasses safety approval and damages system integrity
AgentApproval does not isolate tool arguments and embeds malicious instructions in the parameters awaiting approval. The approval prompt concatenates the raw input directly, without delimiting untrusted data or stripping comments, so the review model is interfered with by internal instructions and incorrectly approves a malicious tool call, which may cause data tampering or service interruption.
Component
PraisonAI is a large-language-model-based intelligent-agent development framework. It includes a multi-agent tool-calling mechanism and a human-in-the-loop approval flow, and uses automated assessment of tool-call risk to protect system operations, especially by providing decision support for high-risk commands.
Type
Injection (CWE-74)
Repo
Remediation
- Wrap untrusted data with explicit delimiters and instruct the system prompt to ignore embedded instructions; implement comment filtering; and introduce a ternary judgment that escalates to human review, defaulting to reject or safely escalate potential injection requests.