GitHub Advisoryadvisory · npm

GHSA-c5xx-h28h-f682 obsidian-tc : Symlink read-ACL scope bypass via lexical path checks

MEDIUM Published 2026-10-23 Modified 2026-10-23 Official page ↗
Aliases
CVE-2026-77361
Ecosystem
npm
Packages
obsidian-tc
Severity
Moderate
CVSS vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
Weaknesses
CWE-59, CWE-863
Reviewed
2026-10-23

Affected packages

• npm obsidian-tc: < 1.3.1 → fixed in 1.3.1

Description

Impact ACL checks ran on the lexical vault-relative path while containment used the realpath. An in-vault symlink placed under an allowed glob, whose realpath resolved into a denied folder, passed the read ACL — an intra-vault read-ACL-scope bypass. It requires an out-of-band-planted symlink (no MCP tool creates one) and is not a vault-root escape. Patches Fixed in 1.3.1. Upgrade to `>= 1.3.1`. ACL enforcement now derives the realpath vault-relative path and feeds a single unified predicate at every site. Workarounds Do not permit untrusted symlinks inside the vault.

Related

Alias · CVE (1)

  • CVE-2026-77361 obsidian-tc is a governed, agent-ready Model Context Protocol server for Obsidian vaults. vulnerability

Weakness · CWE (2)

  • CWE-59 Improper Link Resolution Before File Access weakness
  • CWE-863 Incorrect Authorization weakness

References