Track vulnerabilities like this one. Sign up free to get alerted when software you use is affected.
9.8

CVE-2026-61560: zereight/mcp-gitlab lets anyone read files and steal tokens

CVE-2026-61560 · published 27 days ago
Summary

Versions of zereight/mcp-gitlab before 2.1.27 expose a tool that can read any file on the server without logging in. An attacker could use this to grab the GitLab personal access token stored on the machine and take over a GitLab account. Update the software to version 2.1.27 or later, or disable the default configuration that enables this behavior.

What to do
  • Update zereight mcp-gitlab to version 2.1.27.
  • Update zereight @zereight/mcp-gitlab to version 2.1.27.
Affected software
Ecosystem VendorProductAffected versions
– zereight gitlab-mcp < 2.1.27
npm zereight mcp-gitlab < 2.1.27
Fix: upgrade to 2.1.27
npm zereight @zereight/mcp-gitlab < 2.1.27
Fix: upgrade to 2.1.27
Original advisory text
@zereight/mcp-gitlab: Unauthenticated arbitrary file read via `upload_markdown` enables PAT exfiltration and full account takeover
`@zereight/mcp-gitlab` is a Model Context Protocol server for GitLab. Prior to version 2.1.27, the SSE transport mode (`SSE=true`) exposes all MCP tools without any authentication. The `upload_markdown` tool reads arbitrary files from the server's local filesystem via an unsanitized `file_path` parameter and uploads them to a GitLab project. Combined, any unauthenticated network-reachable attacker can read `/proc/self/environ` to steal the server's `GITLAB_PERSONAL_ACCESS_TOKEN` and achieve full GitLab account takeover. This is the default configuration for Docker deployments. Version 2.1.27 contains a patch.
Fix within
Internet-facing 3 days
Internal 60 days
  • Not known to be exploited
  • Can be exploited automatically
  • Gives an attacker full control
Severity
9.8 Critical
Exploitation
3% chance of attack within 30 days
Type
CWE-22Path Traversal
Timeline
Published15 Sep 2026
Updated9 Oct 2026
First seen15 Sep 2026
Track software like this
Free during beta