Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malicious URL with path traversal payload
-
DeliveryDeliver via phishing/forum post
-
ExploitUser clicks link with active GitLab session
-
ExecutionPath validation bypassed
-
PersistJavaScript executes in victim browser
-
ImpactSession tokens exfiltrated or unauthorized actions performed
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path traversal prevention
|
| Exploitation Conditions | Requires High attack complexity (AC:H) - exploitation depends on 'certain conditions' related to specific GitLab path validation contexts not fully detailed in public disclosure. User interaction (UI:R) is mandatory: victim must click attacker-controlled URL while authenticated to GitLab or with active session cookies. No authentication required for the attacker (PR:N), but attacker must successfully social-engineer target users to visit malicious links. Exploitation is NOT automatable per SSVC assessment - requires targeted phishing or watering-hole attacks rather than mass scanning. Attack surface is limited to GitLab instances accessible over network (AV:N); air-gapped or localhost-only deployments are not vulnerable to remote attackers. The vendor's phrase 'under certain conditions' suggests non-default configurations or specific feature usage may be required, though GitLab has not publicly clarified these prerequisites - defenders should assume default installations are vulnerable. |
| Impact | Real-world risk requires careful assessment of conflicting signals. CVSS 8.0 (High) correctly captures potential impact with Changed Scope enabling cross-origin attacks, but AC:H and UI:R indicate non-trivial exploitation barriers. CISA SSVC rates Technical Impact as 'total' but Exploitation as 'none' and Automatable as 'no' - suggesting this requires targeted social engineering rather than mass scanning. Publicly available exploit code (HackerOne report 3572231) significantly lowers the skill barrier for threat actors, elevating real-world risk beyond what SSVC exploitation status alone suggests. The unauthenticated attack vector (PR:N) is concerning for internet-facing GitLab instances, but High complexity suggests exploitation depends on specific GitLab configurations or user behaviors not universally present. Priority should be HIGH for organizations with public GitLab instances where users click external links, MEDIUM for authenticated-only or internal deployments with security-aware users. The 'certain conditions' phrase in vendor description remains vague - defenders should assume default configurations are vulnerable unless vendor clarifies otherwise. |
| Exploit ScenarioDerived | An unauthenticated attacker crafts a malicious GitLab URL containing path traversal sequences that bypass validation and inject JavaScript payload into a repository view or project page. The attacker distributes this URL via phishing email or posts it in external forums frequented by target organization developers. When a GitLab user with active session clicks the link, the malicious JavaScript executes in their browser with their session privileges, exfiltrating authentication tokens, API keys from local storage, or performing unauthorized repository operations as the victim user. HackerOne report 3572231 provides publicly available exploit code demonstrating the attack technique. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 23, 2026
Cross-site scripting (XSS) in GitLab CE/EE versions 18.10.0-18.10.3 and 18.11.0 enables unauthenticated attackers to execute arbitrary JavaScript in victim browser sessions via improper path validation. GitLab disclosed this vulnerability with publicly available exploit code (HackerOne report 3572231), though CISA SSVC indicates no active exploitation confirmed at time of analysis. CVSS 8.0 reflects the changed scope (S:C) allowing impact beyond the vulnerable component, though High attack complexity (AC:H) and required user interaction (UI:R) limit ease of exploitation. Patched in versions 18.10.4 and 18.11.1.
RemediationAI
Upgrade immediately to GitLab 18.10.4 or 18.11.1 per vendor advisory at https://about.gitlab.com/releases/2026/04/22/patch-release-gitlab-18-11-1-released/. For the 18.10 branch, apply version 18.10.4; for 18.11 branch, apply 18.11.1. If immediate patching is not feasible, implement compensating controls: configure web application firewall rules to block requests containing path traversal patterns (../, %2e%2e%2f, Unicode variations) targeting GitLab endpoints, though this may cause false positives for legitimate file operations. Deploy Content Security Policy headers with restrictive script-src directives to limit XSS impact, noting this reduces but does not eliminate risk as attackers may leverage existing trusted scripts. Restrict GitLab access to authenticated VPN users only, eliminating the unauthenticated attack surface, though this significantly impacts usability for public repositories. Monitor access logs for unusual path patterns in URLs. All compensating controls are partial mitigations - vendor patching remains the definitive solution.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
This is a path traversal leading to cross-site scripting vulnerability (CWE-41: Improper Resolution of Path Equivalence). GitLab's web application failed to properly validate file paths in certain request handlers, allowing attackers to craft URLs that bypass origin restrictions and inject malicious JavaScript. The affected components are GitLab Community Edition and Enterprise Edition versions 18.10.x and 18.11.x. The CVSS Changed Scope (S:C) indicates the vulnerability impacts resources beyond the GitLab application itself - specifically, the confidentiality and integrity of user browser sessions and potentially other web applications under the same origin. This class of vulnerability typically arises from insufficient canonicalization of user-supplied path input before making security decisions, allowing sequences like '../', URL encoding, or Unicode variations to traverse outside intended directories.
Know when Gitlab gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
Lifecycle Timeline
4DescriptionCVE.org
GitLab has remediated an issue in GitLab CE/EE affecting all versions from 18.10 before 18.10.4 and 18.11 before 18.11.1 that could have allowed an unauthenticated user to execute arbitrary JavaScript in a user's browser session due to improper path validation under certain conditions.
Executive ViewAI
GitLab CE/EE versions 18.10.0-18.10.3 and 18.11.0 contain a high-severity cross-site scripting vulnerability that allows unauthenticated attackers to execute malicious code in user browsers through improper path validation, potentially compromising user sessions and data across the platform. Organizations running affected versions face immediate risk to user accounts and sensitive project data, requiring urgent patching to prevent account compromise and data exfiltration.
Apply vendor patch. Pending patch deployment: Implement Web Application Firewall rules to detect and block XSS payloads in URL paths; restrict access to GitLab instances via network segmentation or IP allowlisting; disable external user access if operationally feasible; monitor for suspicious JavaScript execution or session hijacking attempts in user logs.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9. Rated critical severity (CVSS 10
An issue has been discovered in GitLab CE/EE affecting all versions from 16.1 prior to 16.1.6, 16.2 prior to 16.2.9, 16.
When requests to the internal network for webhooks are enabled, a server-side request forgery vulnerability in GitLab af
Unauthenticated arbitrary file read in GitLab CE/EE lets remote attackers retrieve files from the GitLab server via the
The SSH key upload feature (lib/gitlab_keys.rb) in gitlab-shell before 1.7.3, as used in GitLab 5.0 before 5.4.1 and 6.x
A vulnerability in GitLab CE/EE affecting all versions from 11.10 prior to 15.1.6, 15.2 to 15.2.4, 15.3 to 15.3.2 allows
Remote code execution in GitLab CE/EE (all versions from 19.2 before 19.2.8, 19.3 before 19.3.5, and 19.4 before 19.4.2)
Remote code execution in GitLab CE/EE can be triggered by a specially crafted regular expression processed through a vul
Sensitive credential and configuration disclosure in GitLab Enterprise Edition allows an authenticated user with Duo Cha
The Kubernetes integration in GitLab Enterprise Edition 11.x before 11.2.8, 11.3.x before 11.3.9, and 11.4.x before 11.4
Authenticated command injection in Dokploy (self-hostable PaaS) versions 0.29.3 through 0.29.12 lets a low-privileged us
Authenticated code execution on the GitLab server is possible in GitLab CE/EE 19.2 through 19.4.0, where an integer over
EUVD-2026-25046
GHSA-gj6x-vqpx-4p3c
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB