Code Graph RAG is an AI-powered knowledge graph and retrieval system for querying, understanding, and editing multi-language codebases. Prior to 0.0.345, the MCPToolsRegistry.read_file implementation in codebase_rag/mcp/tools.py joins attacker-controlled file_path input to project_root without resolving and verifying containment when offset or limit selects the paginated branch. An absolute path causes pathlib to discard the configured root, while relative traversal can also resolve outside it. The protected non-paginated branch uses validate_project_path, but the paginated branch bypasses that validation before opening the path. An unauthenticated caller of a network-exposed HTTP MCP server can therefore read arbitrary UTF-8-readable files available to the server process, including credentials, environment data, private keys, source, and configuration; local callers through the stdio transport can reach the same vulnerable code path. This issue is fixed in version 0.0.345.

Project Subscriptions

Vendors Products
Vitali87 Subscribe
Code-graph-rag Subscribe
Advisories

No advisories yet.

Fixes

Solution

No solution given by the vendor.


Workaround

No workaround given by the vendor.

History

Fri, 06 Nov 2026 17:00:00 +0000

Type Values Removed Values Added
First Time appeared Vitali87
Vitali87 code-graph-rag
Vendors & Products Vitali87
Vitali87 code-graph-rag

Thu, 05 Nov 2026 20:15:00 +0000

Type Values Removed Values Added
Description Code Graph RAG is an AI-powered knowledge graph and retrieval system for querying, understanding, and editing multi-language codebases. Prior to 0.0.345, the MCPToolsRegistry.read_file implementation in codebase_rag/mcp/tools.py joins attacker-controlled file_path input to project_root without resolving and verifying containment when offset or limit selects the paginated branch. An absolute path causes pathlib to discard the configured root, while relative traversal can also resolve outside it. The protected non-paginated branch uses validate_project_path, but the paginated branch bypasses that validation before opening the path. An unauthenticated caller of a network-exposed HTTP MCP server can therefore read arbitrary UTF-8-readable files available to the server process, including credentials, environment data, private keys, source, and configuration; local callers through the stdio transport can reach the same vulnerable code path. This issue is fixed in version 0.0.345.
Title Code Graph RAG: MCP paginated read_file path traversal / arbitrary file read
Weaknesses CWE-22
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}


Projects

Sign in to view the affected projects.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-11-05T20:10:19.957Z

Reserved: 2026-08-20T20:48:20.507Z

Link: CVE-2026-77604

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-05T20:18:00.017

Modified: 2026-11-05T20:18:00.017

Link: CVE-2026-77604

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-06T16:35:14Z

Weaknesses