Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privileged AgentRuntime API access
-
DeliveryIdentify or create sibling directory sharing basePath string prefix
-
ExploitCall readFile() or listDir() with sibling path
-
ExecutionUnanchored startsWith() check passes containment test
-
ImpactRead arbitrary files outside intended sandbox
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must have low-privileged ability to call |
| Impact | The CVSS 3.1 vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N yields a base score of 6.5 (Medium), which accurately reflects the real-world risk profile. The local attack vector (AV:L) is the primary limiting factor: the attacker must already have the ability to invoke AgentRuntime methods, implying at minimum process-level or API-level access. Attack complexity is low (AC:L) and no user interaction is required (UI:N), meaning once access is established, exploitation is trivial and automatable - the PoC demonstrates this with a simple script. The scope change (S:C) with high confidentiality impact (C:H) reflects that the sandbox security boundary is fully bypassed, potentially exposing any file readable by the Node.js process on the host. There is no integrity or availability impact (I:N/A:N), as the vulnerability is read-only. EPSS data was not provided; given the niche deployment footprint and local-access prerequisite, opportunistic mass exploitation is unlikely. The public PoC elevates risk for targeted scenarios - any environment where untrusted agents or users can reach the AgentRuntime API should treat this as a high-priority patch. |
| Exploit ScenarioDerived | An agent operating within a Network-AI deployment where |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 20, 2026
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.
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.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
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.
Know when Node.js gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
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.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.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.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
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
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
EUVD-2026-46018
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB