CVE-2026-48168: PraisonAI: GitHub Actions Claude workflow command injection via unquoted PR branch name
PraisonAI is a multi-agent teams system. In versions prior to 4.6.40, the bundled Claude GitHub Actions workflow is vulnerable to command injection because it embeds an attacker-controlled pull request branch name into a Bash run: block without quoting or validation. Additionally, the workflow allows any @claude comment to trigger the job regardless of whether the commenter is a trusted collaborator. An outside contributor can open a pull request from a fork whose branch name contains shell metacharacters and comment @claude, causing Bash to execute arbitrary shell code in the GitHub Actions runner. Because these commands run in a job holding a GitHub App token with write permissions, OIDC access, and gh/git access, the injection can be chained through $GITHUB_PATH to compromise later privileged steps, enabling repository writes, pull request and issue manipulation, or OIDC-token abuse. This issue has been fixed in version 4.6.40.
Security readout for executives and security teams
Plain-English summary
A malicious outside contributor could abuse PraisonAI’s bundled Claude workflow to run unauthorized commands in a GitHub Actions runner. The job carries powerful repository and identity permissions, creating risk of repository changes, issue or pull-request manipulation, and OIDC-token abuse. PraisonAI versions before 4.6.40 are affected.
Executive priority
Prioritize immediate remediation wherever the workflow is enabled, especially in repositories accepting public fork pull requests. The maximum CVSS score and privileged runner context support emergency handling. If exposure is confirmed, upgrade or disable the workflow promptly and investigate historical runs before restoring normal operation.
Technical view
The workflow places an attacker-controlled pull-request branch name into an unquoted, unvalidated Bash run block. Any commenter could trigger the job with @claude, without collaborator verification. Shell metacharacters in a fork branch name could therefore execute commands and modify $GITHUB_PATH, influencing later privileged steps holding GitHub App, write, OIDC, gh, and git access.
Likely exposure
Exposure requires PraisonAI before 4.6.40 and use of the vulnerable bundled Claude GitHub Actions workflow. Repositories accepting fork pull requests are particularly relevant because an outside contributor could supply the branch name and trigger the job. The bundle does not establish how many deployments enabled this workflow.
Exploitation context
The described attack is remote, low-complexity, and requires neither existing privileges nor victim interaction according to the supplied CVSS assessment. However, the source bundle marks this CVE as absent from KEV and provides no evidence of active exploitation. Treat the attack path as credible, but do not claim observed exploitation.
Researcher notes
The supplied record attributes the authorization weakness to CWE-862 and describes command injection through unsafe Bash interpolation. The critical impact depends on the vulnerable workflow running with the stated privileges and on later privileged steps being influenced. Validate actual workflow configuration and permissions per repository. No affected products beyond MervinPraison PraisonAI, or versions beyond those stated, are established.
Mitigation direction
Upgrade PraisonAI to version 4.6.40 or later.
Disable the affected Claude workflow until the upgrade is completed.
Restrict workflow triggering to trusted collaborators using vendor-supported controls.
Review and minimize GitHub App, repository-write, and OIDC permissions assigned to the job.
Consult the GitHub advisory and corrected commit for vendor-approved remediation details.
Validation and detection
Inventory repositories using PraisonAI versions earlier than 4.6.40.
Confirm whether the bundled Claude workflow is present and enabled.
Verify branch-name handling is quoted or validated after remediation.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-862: Authorization and privilege behavior lookup
Authorization weaknesses can support privilege escalation and valid-account review, depending on exploit path. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
The CVE wording references authentication or credential exposure, so valid-account and credential-access review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
3Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-862 · source CWE mapping
Missing Authorization
Missing Authorization represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.