CVE-2026-54051: CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') in Jovancoding Network-AI
Network-AI is a TypeScript/Node.js multi-agent orchestrator. Prior to version 5.9.1, the agent sandbox gates shell commands behind an allowlist (`SandboxPolicy.isCommandAllowed`), which THREAT_MODEL.md calls the main control against a compromised agent (Adversary 3.2). The allowlist glob-matches the whole command string, but `ShellExecutor` runs that string through `/bin/sh -c`. So any wildcard allow such as `git *`, `npm *` or `node *` also matches `git status; <anything>`, and a scoped command becomes arbitrary execution. The issue is fixed in v5.9.1. `ShellExecutor` now executes via `spawn(file, args, { shell: false })` using a quote-aware parsed argv, so no shell is invoked. `SandboxPolicy.isCommandAllowed` and the new `SandboxPolicy.tokenizeCommand` reject any unquoted shell metacharacter (`; & | $ ` ` ` ( ) < > { }` newline) or unterminated quote before the allowlist glob match; quoted metacharacters are preserved as literal argument data. Users should upgrade to `[email protected]` or later. As defense in depth, avoid broad wildcard allowlist entries such as `node *` / `npm *` which are direct code execution by design.
AI Analysis
Technical Summary
Network-AI versions before 5.9.1 implement a command allowlist that glob-matches entire command strings but execute them through /bin/sh -c, which allows shell metacharacters to enable command injection. For example, an allowlist entry like 'git *' matches 'git status; <anything>', permitting arbitrary command execution. The vulnerability is addressed in version 5.9.1 by switching to spawn(file, args, { shell: false }) to avoid shell invocation and by enhancing the allowlist to reject unquoted shell metacharacters or unterminated quotes before matching. Quoted metacharacters are preserved as literal arguments. Users are advised to upgrade to 5.9.1 or later and avoid broad wildcard allowlist entries such as 'node *' or 'npm *' which inherently allow code execution.
Potential Impact
Successful exploitation allows an attacker with at least limited privileges (PR:L) to execute arbitrary OS commands with the privileges of the Network-AI agent. This can lead to complete system compromise (confidentiality, integrity, and availability impacts are all high). The vulnerability is critical with a CVSS score of 9.9, reflecting network attack vector, low attack complexity, no user interaction, and high impact on confidentiality, integrity, and availability.
Mitigation Recommendations
A fix is available in Network-AI version 5.9.1 and later. Users should upgrade to version 5.9.1 or newer to eliminate this vulnerability. Additionally, as a defense in depth measure, users should avoid broad wildcard allowlist entries such as 'node *' or 'npm *' because these inherently allow arbitrary code execution by design. No other vendor advisories indicate alternative mitigations or no-action requirements.
CVE-2026-54051: CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') in Jovancoding Network-AI
Description
Network-AI is a TypeScript/Node.js multi-agent orchestrator. Prior to version 5.9.1, the agent sandbox gates shell commands behind an allowlist (`SandboxPolicy.isCommandAllowed`), which THREAT_MODEL.md calls the main control against a compromised agent (Adversary 3.2). The allowlist glob-matches the whole command string, but `ShellExecutor` runs that string through `/bin/sh -c`. So any wildcard allow such as `git *`, `npm *` or `node *` also matches `git status; <anything>`, and a scoped command becomes arbitrary execution. The issue is fixed in v5.9.1. `ShellExecutor` now executes via `spawn(file, args, { shell: false })` using a quote-aware parsed argv, so no shell is invoked. `SandboxPolicy.isCommandAllowed` and the new `SandboxPolicy.tokenizeCommand` reject any unquoted shell metacharacter (`; & | $ ` ` ` ( ) < > { }` newline) or unterminated quote before the allowlist glob match; quoted metacharacters are preserved as literal argument data. Users should upgrade to `[email protected]` or later. As defense in depth, avoid broad wildcard allowlist entries such as `node *` / `npm *` which are direct code execution by design.
CVSS v3.1
Score 9.9critical
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
Network-AI versions before 5.9.1 implement a command allowlist that glob-matches entire command strings but execute them through /bin/sh -c, which allows shell metacharacters to enable command injection. For example, an allowlist entry like 'git *' matches 'git status; <anything>', permitting arbitrary command execution. The vulnerability is addressed in version 5.9.1 by switching to spawn(file, args, { shell: false }) to avoid shell invocation and by enhancing the allowlist to reject unquoted shell metacharacters or unterminated quotes before matching. Quoted metacharacters are preserved as literal arguments. Users are advised to upgrade to 5.9.1 or later and avoid broad wildcard allowlist entries such as 'node *' or 'npm *' which inherently allow code execution.
Potential Impact
Successful exploitation allows an attacker with at least limited privileges (PR:L) to execute arbitrary OS commands with the privileges of the Network-AI agent. This can lead to complete system compromise (confidentiality, integrity, and availability impacts are all high). The vulnerability is critical with a CVSS score of 9.9, reflecting network attack vector, low attack complexity, no user interaction, and high impact on confidentiality, integrity, and availability.
Mitigation Recommendations
A fix is available in Network-AI version 5.9.1 and later. Users should upgrade to version 5.9.1 or newer to eliminate this vulnerability. Additionally, as a defense in depth measure, users should avoid broad wildcard allowlist entries such as 'node *' or 'npm *' because these inherently allow arbitrary code execution by design. No other vendor advisories indicate alternative mitigations or no-action requirements.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-06-11T18:24:35.096Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a5e50312a4a8d59895ee3c8
Added to database: 07/20/2026, 16:43:29 UTC
Last enriched: 07/20/2026, 16:56:43 UTC
Last updated: 07/21/2026, 09:37:44 UTC
Views: 18
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.
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.