Skip to main content

Network-AI CVE-2026-58481

| EUVDEUVD-2026-46018 MEDIUM
Path Traversal (CWE-22)
2026-07-20 GitHub_M
6.5
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
6.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
vuln.today AI
6.5 MEDIUM

Local vector (AV:L) and low privileges (PR:L) required to call AgentRuntime API; sandbox boundary crossed (S:C) with high confidentiality loss (C:H); read-only flaw so I:N and A:N.

3.1 AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

3
Source Code Evidence Fetched
Jul 20, 2026 - 18:20 vuln.today
Analysis Generated
Jul 20, 2026 - 18:20 vuln.today
Patch available
Jul 20, 2026 - 18:18 EUVD

DescriptionCVE.org

Network-AI is a TypeScript/Node.js multi-agent orchestrator. Prior to version 5.12.2, AgentRuntime promises scoped file access under a configured sandbox basePath, but its path containment checks use raw string prefix tests. A sandbox base such as /tmp/network-ai-sandbox also matches a sibling path such as /tmp/network-ai-sandbox_evil/secret.txt. An agent/user that can call AgentRuntime.readFile() or AgentRuntime.listDir() can read or list files outside the intended sandbox when the target path is in a sibling directory sharing the base path prefix. This breaks the documented sandbox boundary. The issue is fixed in v5.12.2. SandboxPolicy.resolvePath() and isPathAllowed() now use separator-anchored prefix checks (resolved === base || resolved.startsWith(base + path.sep)) for both the allow-list and block-list. A sibling directory that merely shares a name prefix (e.g. /srv/app-evil vs base /srv/app) is no longer treated as in-scope.

AnalysisAI

Sandbox path containment bypass in Network-AI's AgentRuntime (npm package network-ai by jovancoding) allows any low-privileged agent or user with access to AgentRuntime.readFile() or AgentRuntime.listDir() to read or enumerate files outside the configured basePath sandbox by targeting sibling directories whose names share the sandbox's string prefix. Versions 5.12.1 and earlier are confirmed vulnerable (CPE: cpe:2.3:a:jovancoding:network-ai:*:*:*:*:*:*:*:*, EUVD-2026-46018). A working proof-of-concept is included in the GitHub security advisory GHSA-jvcm-f35g-w78p; no public exploit confirmed in active exploitation and the vulnerability is not listed in the CISA KEV catalog.

Technical ContextAI

Network-AI is a TypeScript/Node.js multi-agent orchestrator that exposes a sandboxed file I/O API (AgentRuntime.readFile(), AgentRuntime.listDir()) intended to scope agent filesystem access to a configured basePath. The root cause is CWE-22 (Path Traversal): the containment check in lib/agent-runtime.ts at lines 393-423 uses JavaScript's String.prototype.startsWith() to test whether a resolved path falls within the sandbox. Because startsWith() is not path-separator-aware, a basePath of /tmp/network-ai-sandbox incorrectly accepts /tmp/network-ai-sandbox_evil/secret.txt as in-scope - the string prefix matches even though the path resolves to a completely separate sibling directory. The same flawed pattern is replicated in SandboxPolicy.isPathAllowed() for both the allow-list and block-list. The fix, introduced in v5.12.2 (commit a59c13a1), replaces bare startsWith(base) with separator-anchored checks: resolved === base || resolved.startsWith(base + path.sep), ensuring only true subdirectory descendants pass. The autoApproveReads configuration flag, when enabled, further removes any approval gate for read operations, making exploitation silent.

RemediationAI

Upgrade to Network-AI v5.12.2, the vendor-released patch that corrects the separator-anchored path containment logic in SandboxPolicy.resolvePath() and isPathAllowed(). The patched release is available at https://github.com/Jovancoding/Network-AI/releases/tag/v5.12.2 and the fixing commit is a59c13a1f0ce0e8a0779a90343eef92fac5ab4c3. For deployments that cannot immediately upgrade, restrict who can invoke AgentRuntime.readFile() and AgentRuntime.listDir() to fully trusted principals only - this eliminates the PR:L attack surface. Additionally, disable autoApproveReads in the AgentRuntime configuration if it is enabled; requiring explicit approval for each read operation adds a human gate that limits silent exfiltration. Ensure the filesystem layout does not place sensitive directories adjacent to sandbox roots with similar name prefixes, as a compensating control - though this is fragile and not a substitute for patching. The advisory and full vendor disclosure are at https://github.com/Jovancoding/Network-AI/security/advisories/GHSA-jvcm-f35g-w78p.

CVE-2024-41713 CRITICAL POC
9.1 Oct 21

A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could

CVE-2024-55591 CRITICAL POC
9.8 Jan 14

FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2014-7205 CRITICAL POC
10.0 Oct 08

Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2017-14849 HIGH POC
7.5 Sep 28

Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc

CVE-2017-5941 CRITICAL POC
9.8 Feb 09

An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2014-3744 HIGH POC
7.5 Oct 23

Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi

CVE-2014-9566 HIGH POC
7.5 Mar 10

Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin

CVE-2013-4660 MEDIUM POC
6.8 Jun 28

The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic

CVE-2016-2107 MEDIUM POC
5.9 May 05

The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a

Share

CVE-2026-58481 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy