GHSA-vv65-f55v-xm6g: Grackle has command/argument injection in the git worktree executor that enables RCE on provisioned hosts via an unsanitized task branch name (shell:true)
A command injection vulnerability exists in the @grackle-ai/runtime-sdk (version 0.132.1 and earlier) due to the use of a shell-enabled git executor that unsafely incorporates an untrusted branch name into shell commands. This allows an attacker able to invoke the PowerLine SpawnSession RPC to execute arbitrary commands as the PowerLine user on provisioned hosts, including SSH hosts, Docker containers, or Codespaces. The vulnerability arises because the branch name is passed unsanitized to a shell command, enabling remote code execution (RCE). A secondary issue involves missing argument separators in git commands, which is less impactful but should be addressed. No known exploits are reported in the wild. The vulnerability is rated high severity.
AI Analysis
Technical Summary
The vulnerability in @grackle-ai/runtime-sdk (<=0.132.1) stems from the default git executor spawning git commands with shell:true, causing the untrusted task branch name to be concatenated into a shell command without escaping. This allows command injection via crafted branch names supplied through the PowerLine SpawnSession gRPC interface. The sanitizeBranch function only protects the directory path, not the branch argument itself. The primary fix involves removing shell:true and using execFile with argument arrays to prevent shell interpretation. Additionally, adding '--' separators before positional arguments and validating branch names at the gRPC boundary are recommended to harden the code. This vulnerability enables arbitrary command execution as the PowerLine user on all provisioned environments managed by the affected software.
Potential Impact
An attacker with the ability to invoke the PowerLine SpawnSession RPC can achieve arbitrary command execution as the PowerLine user on all provisioned environments, including SSH hosts, Docker containers, and Codespaces. This effectively allows an attacker to escape the agent sandbox and execute arbitrary shell commands, potentially leading to full compromise of the provisioned hosts. The secondary argument injection issue has limited standalone impact but could facilitate further exploitation if combined with other flaws.
Mitigation Recommendations
A fix is available by removing the use of shell:true in the git executor and switching to execFile with argument arrays, which prevents shell command injection. Additionally, adding '--' separators before positional git arguments and validating branch names against git ref rules at the gRPC boundary (rejecting names with '-', '..', or shell metacharacters) are recommended defense-in-depth measures. Users should upgrade to a version later than 0.132.1 once available or apply these code changes manually. Patch status is not yet confirmed; check the vendor advisory for current remediation guidance.
GHSA-vv65-f55v-xm6g: Grackle has command/argument injection in the git worktree executor that enables RCE on provisioned hosts via an unsanitized task branch name (shell:true)
Description
A command injection vulnerability exists in the @grackle-ai/runtime-sdk (version 0.132.1 and earlier) due to the use of a shell-enabled git executor that unsafely incorporates an untrusted branch name into shell commands. This allows an attacker able to invoke the PowerLine SpawnSession RPC to execute arbitrary commands as the PowerLine user on provisioned hosts, including SSH hosts, Docker containers, or Codespaces. The vulnerability arises because the branch name is passed unsanitized to a shell command, enabling remote code execution (RCE). A secondary issue involves missing argument separators in git commands, which is less impactful but should be addressed. No known exploits are reported in the wild. The vulnerability is rated high severity.
CVSS v4.0
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in @grackle-ai/runtime-sdk (<=0.132.1) stems from the default git executor spawning git commands with shell:true, causing the untrusted task branch name to be concatenated into a shell command without escaping. This allows command injection via crafted branch names supplied through the PowerLine SpawnSession gRPC interface. The sanitizeBranch function only protects the directory path, not the branch argument itself. The primary fix involves removing shell:true and using execFile with argument arrays to prevent shell interpretation. Additionally, adding '--' separators before positional arguments and validating branch names at the gRPC boundary are recommended to harden the code. This vulnerability enables arbitrary command execution as the PowerLine user on all provisioned environments managed by the affected software.
Potential Impact
An attacker with the ability to invoke the PowerLine SpawnSession RPC can achieve arbitrary command execution as the PowerLine user on all provisioned environments, including SSH hosts, Docker containers, and Codespaces. This effectively allows an attacker to escape the agent sandbox and execute arbitrary shell commands, potentially leading to full compromise of the provisioned hosts. The secondary argument injection issue has limited standalone impact but could facilitate further exploitation if combined with other flaws.
Mitigation Recommendations
A fix is available by removing the use of shell:true in the git executor and switching to execFile with argument arrays, which prevents shell command injection. Additionally, adding '--' separators before positional git arguments and validating branch names against git ref rules at the gRPC boundary (rejecting names with '-', '..', or shell metacharacters) are recommended defense-in-depth measures. Users should upgrade to a version later than 0.132.1 once available or apply these code changes manually. Patch status is not yet confirmed; check the vendor advisory for current remediation guidance.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-vv65-f55v-xm6g
- Osv Schema Version
- 1.4.0
- Aliases
- []
- Ecosystems
- ["npm"]
- Database Specific Severity
- HIGH
- Cvss Version
- 4.0
Threat ID: 6a46ecba27e9c7971943cdb2
Added to database: 07/02/2026, 22:56:58 UTC
Last enriched: 07/02/2026, 23:13:59 UTC
Last updated: 07/03/2026, 00:03:00 UTC
Views: 3
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.