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 `network-ai@5.9.1` or later. As defense in depth, avoid broad wildcard allowlist entries such as `node *` / `npm *` which are direct code execution by design.
Published: 2026-07-20
Score: 9.9 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Network-AI is a TypeScript/Node.js orchestrator. Prior to version 5.9.1 the agent sandbox gated shell commands behind an allowlist. The allowlist performed a glob match against the entire command string, while the execution engine ran the string through /bin/sh -c. As a result any wildcard that matched, such as git * or npm *, also matched strings containing shell metacharacters, allowing an attacker to inject a complete shell command after the glob match. The flaw is a classic operating‑system command injection (CWE-78) and can lead to the execution of arbitrary OS commands on the host running a compromised agent.

Affected Systems

All releases of Jovancoding Network‑AI before version 5.9.1 are vulnerable. Users running any of those versions, including the latest pre‑5.9.1 build, should verify their installed version and plan a prompt upgrade.

Risk and Exploitability

The CVSS score of 9.9 reflects critical severity, and the EPSS score of < 1% indicates a very low but non‑zero likelihood of exploitation. The vulnerability is not listed in the CISA KEV catalog. Based on the description, the attack vector involves a misconfigured or malicious agent that uses broad wildcard allowlist entries; once such an entry matches, the attacker can inject shell metacharacters and execute arbitrary code through the /bin/sh -c shell. The exploitation would give the attacker full control over the host operating system.

Generated by OpenCVE AI on August 1, 2026 at 07:14 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to network-ai@5.9.1 or later, which replaces the shell executor with a spawn call that does not use a shell.
  • Restrict wildcard allowlist entries such as "node *" or "npm *" to explicit command names.
  • Ensure that the new tokenization logic in SandboxPolicy rejects any unquoted shell metacharacters before accepting a command for execution.

Generated by OpenCVE AI on August 1, 2026 at 07:14 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-qw6v-5fcf-5666 Network-AI: Improper Neutralization of Special Elements used in an OS Command
History

Tue, 21 Jul 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 20 Jul 2026 23:30:00 +0000

Type Values Removed Values Added
First Time appeared Jovancoding
Jovancoding network-ai
Vendors & Products Jovancoding
Jovancoding network-ai

Mon, 20 Jul 2026 16:45:00 +0000

Type Values Removed Values Added
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 `network-ai@5.9.1` or later. As defense in depth, avoid broad wildcard allowlist entries such as `node *` / `npm *` which are direct code execution by design.
Title Network-AI has an an OS Command Injection issue
Weaknesses CWE-78
References
Metrics cvssV3_1

{'score': 9.9, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H'}


Subscriptions

Jovancoding Network-ai
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-21T16:03:01.029Z

Reserved: 2026-06-11T18:24:35.096Z

Link: CVE-2026-54051

cve-icon Vulnrichment

Updated: 2026-07-21T16:02:44.525Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-01T07:15:03Z

Weaknesses
  • CWE-78

    Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')