Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconIdentify exposed Storybook instance
-
DeliveryCraft XSS payload exploiting input validation flaw
-
ExploitSocial engineer developer to click malicious link
-
InstallExecute JavaScript in victim's GitLab session context
-
C2Extract authentication tokens from browser storage
-
ExecuteAuthenticate to GitLab as victim
-
ImpactAccess private repositories or CI/CD secrets
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the GitLab instance to have the Storybook development environment accessible to the attacker, which is typically exposed on internet-facing GitLab installations or accessible via VPN/internal networks for on-premise deployments. The victim must have an active authenticated session with GitLab and must interact with attacker-controlled content by clicking a malicious link or viewing a crafted Storybook component (CVSS UI:R). High attack complexity (CVSS AC:H) suggests additional prerequisites beyond basic XSS exploitation, potentially involving specific Storybook configurations, browser states, or timing conditions not detailed in the public description. Limiting factors: Storybook is primarily a development tool, so exploitation is most likely against developer accounts rather than end users; many organizations restrict Storybook to internal development networks, reducing remote attack surface; modern browser XSS protections may interfere with exploitation depending on payload construction. |
| Impact | Real-world risk is moderate despite the high CVSS 8.0 score. The CVSS vector reveals critical limiting factors: AC:H indicates exploitation requires specific conditions beyond simple crafted requests, and UI:R mandates victim interaction (likely clicking a malicious link or viewing attacker-controlled content in Storybook). CISA SSVC classifies this as 'Exploitation: none' and 'Automatable: no', confirming it cannot be mass-scanned or exploited automatically. However, SSVC 'Technical Impact: total' reflects the severity of token theft, which grants full account access. The publicly available exploit (HackerOne 3574642) lowers the barrier for targeted attacks against development teams with Storybook environments exposed. Key risk factors: Storybook is typically used in development/staging environments rather than production, potentially limiting exposure, but organizations with internet-facing development instances or shared development platforms face elevated risk. The scope change (S:C) in CVSS indicates token theft could affect resources beyond the vulnerable component, enabling lateral movement. Priority should be HIGH for organizations with exposed Storybook instances, MEDIUM for those with network-isolated development environments. |
| Exploit ScenarioDerived | An attacker identifies a GitLab instance with an exposed Storybook development environment (version 16.1.0-18.11.0). They craft a malicious URL containing JavaScript payload that exploits the improper input validation in Storybook's rendering engine. The attacker sends this link to a GitLab developer via phishing email or embeds it in a legitimate-looking code review comment. When the victim clicks the link and views the Storybook interface, the XSS executes in their browser context, harvesting GitLab access tokens from cookies or local storage. The attacker uses these stolen tokens to authenticate as the victim, gaining access to private repositories, CI/CD pipelines, and potentially injecting malicious code into the development workflow. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 23, 2026
Cross-site scripting vulnerability in GitLab's Storybook development environment allows remote unauthenticated attackers to steal access tokens via crafted user interaction. Affects GitLab CE/EE versions 16.1.0 through 18.9.5, 18.10 through 18.10.3, and 18.11.0. Publicly available exploit code exists (HackerOne report 3574642), though CISA SSVC indicates no confirmed active exploitation at time of analysis. CVSS 8.0 reflects high confidentiality and integrity impact with scope change, but CVSS vector AC:H (high complexity) and UI:R (user interaction required) indicate exploitation requires targeted social engineering rather than automated mass exploitation.
RemediationAI
Vendor-released patches are available: upgrade to GitLab 18.11.1, 18.10.4, or 18.9.6 depending on your current release branch. Organizations on the 16.x or 17.x series should upgrade to the latest patched version in the 18.x line. Full release details are documented at https://about.gitlab.com/releases/2026/04/22/patch-release-gitlab-18-11-1-released/. If immediate patching is not feasible, implement compensating controls: restrict network access to Storybook endpoints (typically /storybook/ paths) using firewall rules or reverse proxy ACLs to allow only trusted development networks (trade-off: may disrupt remote developer workflows); disable the Storybook feature entirely if not actively used in your development pipeline (consult GitLab documentation for feature flags); implement Content Security Policy headers to restrict script execution on GitLab domains (trade-off: requires testing to avoid breaking legitimate functionality). Monitor authentication logs for unusual token usage patterns originating from development environment IPs. GitLab's internal work item tracking the fix is available at https://gitlab.com/gitlab-org/gitlab/-/work_items/595332.
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 an improper input validation vulnerability (CWE-79: Cross-site Scripting) affecting GitLab's Storybook development environment. Storybook is a frontend workshop tool used by developers to build and test UI components in isolation. The vulnerability stems from insufficient sanitization of user-controlled input within the Storybook interface, allowing injection of malicious JavaScript. When exploited, the XSS executes in the context of the GitLab domain with scope change (CVSS S:C), enabling access to authentication tokens that would normally be isolated from the Storybook environment. The CPE identifier cpe:2.3:a:gitlab:gitlab applies to both Community Edition (CE) and Enterprise Edition (EE) installations, indicating widespread applicability across GitLab's product line.
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 16.1.0 before 18.9.6, 18.10 before 18.10.4, and 18.11 before 18.11.1 that under certain conditions could have allowed an unauthenticated user to access tokens in the Storybook development environment due to improper input validation.
Executive ViewAI
GitLab CE/EE versions 16.1.0-18.11.0 contain a cross-site scripting vulnerability in the Storybook environment that enables unauthenticated attackers to steal access tokens through social engineering. This directly threatens credential compromise for any organization using affected GitLab instances, potentially granting attackers repository access, CI/CD pipeline control, and deployment capabilities without requiring valid credentials.
Apply vendor patch. Interim mitigations pending patch deployment: (1) Restrict network access to GitLab Storybook component to internal networks only; (2) Disable Storybook functionality if not actively used for development; (3) Implement browser-level Content Security Policy headers to restrict script execution; (4) Monitor access logs for unusual token creation or usage patterns; (5) Enforce multi-factor authentication on all GitLab accounts to reduce token-only compromise impact.
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
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-25042
GHSA-g9pv-f88j-p6rr
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB