CVE-2026-61647: @roomi-fields/notebooklm-mcp has a path traversal in vault.batch tool that allows arbitrary file write outside intended vault directory
The vault_batch MCP tool (and the equivalent POST /batch-to-vault HTTP endpoint) accepted a caller-supplied vault_dir path that was passed directly to path.resolve() + fs.mkdir() with no containment check. A caller — or a prompt-injected LLM driving the MCP — could therefore create directories and write .md / .json answer files anywhere the server process can write.
The slug_prefix parameter had a parallel, smaller traversal vector: it was concatenated into the filename without sanitization, so a prefix containing / or .. could escape the resolved vault directory through the filename component.
References
- github.com/advisories/GHSA-jjhp-8crj-mppq
- github.com/roomi-fields/notebooklm-mcp/commit/13828d9ff3933839ce14c1797d3b20a6bb7694a6
- github.com/roomi-fields/notebooklm-mcp/issues/15
- github.com/roomi-fields/notebooklm-mcp/releases/tag/v2.0.3
- github.com/roomi-fields/notebooklm-mcp/security/advisories/GHSA-jjhp-8crj-mppq
- nvd.nist.gov/vuln/detail/CVE-2026-61647
Code Behaviors & Features
Detect and mitigate CVE-2026-61647 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →