Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privileged GitLab user
-
DeliverySend request with mismatched cache key
-
ExploitPoison shared cache entry
-
ExecutionVictim loads cached page
-
ImpactServe poisoned content to other users
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V4 - API and Web Service Acceptance of extraneous untrusted data
|
| Exploitation Conditions | Exploitation requires the GitLab instance to be running a specific (unspecified) deployment/caching configuration in which cache keys are constructed improperly - the vendor states the issue arises only 'under certain deployment configurations,' so default or non-caching deployments are likely not affected. The attacker must be an authenticated user (PR:L), and exploitation additionally requires victim user interaction (UI:R) - a target user must load the poisoned cached page for impact to occur. High attack complexity (AC:H) reflects that the attacker must align request parameters with the flawed cache-key logic. These factors - authentication, a non-default caching configuration, and required victim interaction - collectively limit realistic exploitation to targeted scenarios rather than broad, unauthenticated, default-config attacks. |
| Impact | This is a genuinely low-priority issue despite affecting a widely-deployed platform. The CVSS 3.1 base score of 4.6 (Medium) is consistent with the vector CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L: while network-reachable, exploitation requires an authenticated low-privileged user (PR:L), high attack complexity (AC:H - gated behind 'certain deployment configurations' per the description), AND victim user interaction (UI:R), with only Low impact across confidentiality, integrity, and availability. No EPSS score, CISA KEV listing, SSVC decision data, or POC availability was provided in the input, so exploitation status is 'no public exploit identified at time of analysis.' The combination of mandatory authentication, high complexity, required user interaction, and configuration dependency makes mass or automated exploitation impractical. The AC:H and the description's 'under certain deployment configurations' qualifier are the dominant risk-limiting signals; this is a high-footprint product but a low-real-risk flaw, not an urgent-patch situation absent an active-exploitation signal. |
| Exploit ScenarioDerived | An authenticated low-privileged GitLab user on an instance running a vulnerable caching configuration crafts a request that, due to improper cache key construction, causes attacker-influenced content to be stored under a cache key subsequently served to other users. A victim user who then loads the affected page receives the poisoned cached content. No public exploit code was identified in the provided data, and success depends on the specific deployment/caching configuration being present. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 13, 2026
Cache poisoning in GitLab CE/EE allows an authenticated user, on deployments running a specific caching configuration, to corrupt cached page content that is subsequently served to other users because cache keys are constructed improperly. Affected versions are all releases from 16.2 before 19.2.8, 19.3 before 19.3.5, and 19.4 before 19.4.2 on both Community and Enterprise editions; exploitation requires a valid account (PR:L), a non-default deployment/caching setup, high attack complexity (AC:H), and victim interaction (UI:R), yielding only limited confidentiality, integrity, and availability impact (CVSS 4.6). No public exploit code has been identified at time of analysis and there is no confirmed active exploitation (CISA KEV), so this is best treated as a low-priority, targeted-scenario issue rather than a broadly exploitable one.
RemediationAI
Vendor-released patch: upgrade to GitLab 19.2.8, 19.3.5, or 19.4.2 (or later) on every affected CE/EE instance, using the fix versions published at https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-4-2-released/ and the underlying work item https://gitlab.com/gitlab-org/gitlab/-/work_items/627507. Where an immediate upgrade is not possible, the most direct compensating control is to disable the affected page/response caching feature or to place the instance behind an edge cache that normalizes and includes the full request identity (authenticated user/session context) in the cache key - the trade-off is materially higher origin load and slower response times for anonymous traffic. Restricting the deployment to a single trusted user population or requiring VPN/TLS client restrictions to reach the instance reduces the pool of authenticated attackers able to seed a poisoned entry, at the cost of reduced accessibility for legitimate users. Because exploitation also requires victim interaction, briefly blocking or warning untrusted traffic to cached endpoints can help, but these mitigations are temporary and do not eliminate the underlying cache-key collision; upgrading remains the only complete fix.
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
The root cause maps to CWE-349, acceptance of extraneous untrusted data with trusted data, expressed here as improper construction of cache keys in GitLab's page/response caching layer. When a request's distinguishing parameters are not fully incorporated into the cache key, two logically distinct requests can collide on the same key, allowing the first response to be stored and later replayed to a different user. Because the stored artifact is served from a trusted cache, downstream consumers treat the poisoned entry as legitimate, which is the defining characteristic of cache poisoning. Identified by CPE cpe:2.3:a:gitlab:gitlab:*:*:*:*:*:*:*:*, the flaw spans the GitLab CE/EE codebase from 16.2 through the fixed 19.2.8, 19.3.5, and 19.4.2 releases. The unauthored vector is CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L: network-reachable but requiring an authenticated account, a carefully aligned request set, and a victim who loads the poisoned page - the interaction of these three prerequisites, plus the vendor's statement that the issue only materializes 'under certain deployment configurations,' is why the assigned severity is low and why default or non-caching deployments are likely unaffected.
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:L/UI:R/S:U/C:L/I:L/A:L
Authenticated user (PR:L) exploits a config-dependent cache-key flaw (AC:H) over the network; poisoning takes effect only when a victim loads the page (UI:R), with limited C/I/A impact.
Primary rating from Vendor (GitLab).
CVSS VectorVendor: GitLab
Lifecycle Timeline
2DescriptionCVE.org
GitLab has remediated an issue in GitLab CE/EE affecting all versions from 16.2 before 19.2.8, 19.3 before 19.3.5, and 19.4 before 19.4.2 that, under certain deployment configurations, could have allowed an authenticated user to poison cached page content served to other users due to improper cache key construction.
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.
Related Vulnerabilities in GitLab CE/EE Authorization and Access Control Flaws
View all 24An 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
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 code execution on the GitLab server is possible in GitLab CE/EE 19.2 through 19.4.0, where an integer over
Authenticated users who can define or modify a CI/CD configuration can achieve remote code execution on GitLab CE/EE ser
Unauthenticated path traversal in the @zereight/mcp-gitlab Model Context Protocol server prior to version 2.1.27 allows
EUVD-2026-98211
GHSA-xw26-h8vq-gff9
NVD
CVE.org
EPSS
VulDB
Exploit-DB