---
id: "CVE-2026-111045"
kind: "vulnerability"
aliases: ["CVE-2026-111045"]
title: "CLI Bridge: dangling symlink lets file writes escape the workspace root"
severity: "high"
cvss: 7.5
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["cli-bridge", "filesystem", "node", "package"]
not_affected_if: ["fixed-version"]
published_at: "2026-10-19T16:17:03+00:00"
first_seen_at: "2026-10-23T21:57:18+00:00"
updated_at: "2026-10-25T03:22:58+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-111045", "first_seen_at": "2026-10-23T21:57:18+00:00"}]
---

# CLI Bridge: dangling symlink lets file writes escape the workspace root

CLI Bridge checks file paths against the workspace root, but a dangling symlink pointing outside the workspace passes that check when its target does not exist. A write_file call then follows the link and can create or overwrite arbitrary files outside the workspace.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed CLI Bridge version with `npm ls cli-bridge` (package name unknown; confirm in the project's lockfile)
- Look for symlinks inside the workspace root that point outside it, for example `find <workspace> -type l -exec ls -l {} +`

## Fix

- Upgrade CLI Bridge to `0.0.2` or later

## Timeline

- 2026-10-23T21:57:18+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-111045

## From the sources

CLI Bridge provides filesystem access within a workspace root. Prior to 0.0.2, a dangling symlink pointing outside the workspace root bypasses resolveSafePath when fs.realpathSync throws ENOENT for a nonexistent target. The fallback resolves only the parent directory and returns the symlink path as safe, so write_file follows the link and can write arbitrary files outside the workspace root. This issue is fixed in version 0.0.2.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
