CVE-2026-61462
Deferred Deferred - Pending Action

Path Traversal in MCP-GitLab Job API

Vulnerability report for CVE-2026-61462, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-13

Last updated on: 2026-07-13

Assigner: VulnCheck

Description

mcp-gitlab contains a path traversal vulnerability in the job_id parameter of build/index.js that allows attackers to redirect GitLab API requests to arbitrary endpoints. Attackers can supply crafted job_id values like ../../../user to escape the intended path prefix and access arbitrary GitLab API resources using the operator's personal access token.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-13
Last Modified
2026-07-13
Generated
2026-08-03
AI Q&A
2026-07-14
EPSS Evaluated
2026-08-01
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
zereight gitlab_mcp to 2.1.18 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-73 The product allows user input to control or influence paths or file names that are used in filesystem operations.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-61462 is a path traversal vulnerability in the mcp-gitlab tool, specifically in the job_id parameter of build/index.js. The vulnerability allows attackers to manipulate the job_id value by inserting sequences like ../../../user to escape the intended path prefix.

This flaw occurs because the job_id parameter is not properly encoded or validated before being used in GitLab API requests. As a result, attackers can redirect API requests to arbitrary endpoints, such as /api/v4/user, using the operator's personal access token. This grants unauthorized access to sensitive GitLab resources beyond the intended scope of the job_id parameter.

  • The vulnerability affects versions of mcp-gitlab prior to 2.1.18.
  • The root cause is the lack of URL encoding for the job_id parameter, unlike the project_id parameter, which is correctly encoded.
  • The issue was fixed by introducing proper encoding for the job_id parameter and validating it as a numeric identifier to prevent path traversal.
Detection Guidance

To detect the path traversal vulnerability (CVE-2026-61462) in mcp-gitlab, you can inspect network traffic or logs for suspicious API requests containing path traversal sequences in the job_id parameter. Look for patterns like ../../../ or encoded variations (e.g., %2e%2e%2f) in the job_id field.

  • Check GitLab API logs for requests to unintended endpoints (e.g., /api/v4/user) originating from the mcp-gitlab service. These may indicate exploitation attempts.
  • Use a network monitoring tool (e.g., tcpdump, Wireshark) to capture HTTP requests from mcp-gitlab. Filter for requests containing job_id values with traversal sequences. Example command: tcpdump -i any -A 'port 443 and host gitlab.example.com' | grep -E 'job_id=.*\.\.\/'
  • Inspect mcp-gitlab logs for errors or unexpected API responses when processing job_id parameters. Look for 404 or 403 errors that may indicate path traversal attempts.
  • Verify the version of mcp-gitlab installed. Versions prior to 2.1.18 are vulnerable. Use the following command to check the version if installed via npm: npm list gitlab-mcp

For manual testing, you can attempt to reproduce the issue by sending a crafted request with a traversal sequence in the job_id parameter. Example: curl -X GET 'http://mcp-gitlab-server/api/jobs?job_id=../../../user' -H 'Authorization: Bearer <token>'. If the response returns sensitive data (e.g., user details), the system is vulnerable.

Impact Analysis

This vulnerability can have severe impacts if exploited, as it allows attackers to access sensitive GitLab resources using the operator's personal access token.

  • Attackers can access arbitrary GitLab API endpoints, such as user account details, project information, or other confidential data.
  • Since the requests are made with the operator's token, the attacker inherits the permissions of that token, which could include administrative or high-privilege access.
  • Exploitation could lead to unauthorized disclosure of sensitive information, such as personal data, intellectual property, or internal project details.
  • If the operator's token has broad permissions, the attacker could also perform actions like modifying projects, deleting data, or creating new resources.

The vulnerability is particularly dangerous because it does not require authentication or user interaction, making it easier for attackers to exploit remotely.

Compliance Impact

This vulnerability can have significant implications for compliance with standards and regulations that mandate the protection of sensitive data.

  • GDPR (General Data Protection Regulation): If the vulnerability leads to unauthorized access to personal data of EU citizens, it could result in a data breach. GDPR requires organizations to implement appropriate security measures to protect personal data and report breaches within 72 hours. Failure to comply can lead to fines of up to 4% of global annual revenue or €20 million, whichever is higher.
  • HIPAA (Health Insurance Portability and Accountability Act): If the GitLab instance contains protected health information (PHI), exploitation of this vulnerability could lead to unauthorized access to PHI. HIPAA requires covered entities to implement safeguards to protect PHI and report breaches. Non-compliance can result in fines ranging from $100 to $50,000 per violation, with a maximum of $1.5 million per year.
  • Other regulations like PCI DSS (Payment Card Industry Data Security Standard) could also be impacted if the GitLab instance stores or processes payment card data. Unauthorized access to such data could lead to non-compliance and penalties.

Organizations using mcp-gitlab must ensure they apply the necessary patches to mitigate this vulnerability to avoid potential compliance violations and associated penalties.

Mitigation Strategies

The most critical step is to upgrade mcp-gitlab to version 2.1.18 or later, which includes the fix for CVE-2026-61462. The patch introduces proper encoding of job_id and pipeline_id parameters to prevent path traversal.

  • Apply the patch from commit e2a81a047ab8750fa5bfa1763b5d85e5616f3994, which adds the encodeGitLabPathSegment function to properly encode job_id and pipeline_id values. This ensures they remain within their intended path segments.
  • If upgrading is not immediately possible, restrict access to the mcp-gitlab service to trusted networks or IP addresses using firewall rules or network policies.
  • Rotate any GitLab personal access tokens used by mcp-gitlab, as they may have been exposed to unauthorized access during exploitation attempts.
  • Monitor GitLab API logs for signs of exploitation, such as requests to unintended endpoints (e.g., /api/v4/user) or job_id parameters containing traversal sequences.
  • Implement input validation for job_id and pipeline_id parameters to ensure they are numeric and do not contain path traversal sequences. Example validation: reject any job_id that matches the regex /\.\.\//.

For additional security, consider deploying a web application firewall (WAF) to block requests containing path traversal sequences in the job_id parameter.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-61462. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart