GitLab EE
CVE-2025-11247
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privilege GitLab account
-
ExploitCraft malicious GraphQL query
-
ExecutionBypass private-project authorization (IDOR)
-
ImpactExfiltrate sensitive private project data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Exploitation requires a valid authenticated GitLab Enterprise Edition account (PR:L) with access to the GraphQL API endpoint, plus the ability to construct specifically crafted GraphQL queries that reference private-project resources the account is not authorized to view. It affects GitLab EE versions 13.2 up to (not including) 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 - Community Edition and patched versions are not in scope. Limiting factors: the attacker must first obtain or register an account on the target instance (reducing risk on locked-down private instances but raising it on public-signup or multi-tenant SaaS deployments), and impact is confined to confidentiality disclosure of private project data (no write/integrity or availability effect). |
| Impact | This is a genuine-but-low-priority authorization flaw, not a high-severity emergency. The CVSS 3.1 base score of 4.3 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N) is internally consistent: network vector and low complexity, but it requires an authenticated low-privilege account (PR:L), yields only limited confidentiality impact (C:L) and produces no integrity or availability impact (I:N/A:N). This maps to CWE-639 (authorization bypass through a user-controlled key / IDOR), meaning an existing authenticated user can read data they should not - it is NOT an authentication bypass despite the input tag. Signals align toward low real-world urgency: EPSS is 0.24% (14th percentile), there is NO CISA KEV listing, and no confirmed public exploit code. A HackerOne report (#3307422) exists, indicating responsible disclosure via GitLab's bug bounty, but a HackerOne reference is not the same as weaponized public exploit code - treat POC availability as unconfirmed. No SSVC decision data was provided in the input. The main caveat: the limited-scope confidentiality impact and authentication requirement sharply constrain blast radius, so this is a patch-in-normal-cycle issue rather than an emergency, though GitLab's large install base means multi-tenant/public SaaS-style instances with many untrusted authenticated users should prioritize it higher. |
| Exploit ScenarioDerived | An authenticated GitLab user (for example, a member of one group on a shared or public-signup instance) crafts a specifically structured GraphQL query that bypasses project-level authorization checks, causing the API to return sensitive fields from private projects the user is not a member of. Because the attack vector is network with low complexity and no user interaction, any logged-in account can attempt it directly against the GraphQL endpoint; no confirmed public exploit code is identified, though a HackerOne report documents the technique. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Authenticated users can disclose sensitive information from private projects in GitLab Enterprise Edition through crafted GraphQL queries, affecting versions 13.2 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2. The flaw is an authorization bypass (CWE-639) with low confidentiality impact (CVSS 4.3) and requires a valid EE account. This is a genuine but low-priority authorization flaw; no public exploit code was identified, and the EPSS score is 0.24% (14th percentile).
RemediationAI
Upgrade to GitLab EE 18.4.6, 18.5.4, or 18.6.2 as appropriate for your version line. These versions contain the fix for the authorization bypass. The official patch release advisory is available at https://about.gitlab.com/releases/2025/12/10/patch-release-gitlab-18-6-2-released/. No specific workarounds are documented; if immediate upgrade is not possible, restrict GraphQL API access to trusted users and monitor for anomalous queries referencing private project IDs, though these are only temporary mitigations.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability resides in GitLab Enterprise Edition's GraphQL API, which fails to properly enforce authorization controls when resolving queries that reference private project resources. This is a classic CWE-639 instance: an authorization bypass through user-controlled key, where an authenticated user can manipulate object identifiers (e.g., project IDs) in GraphQL queries to access data they are not authorized to view. The CPE entries confirm the affected product is gitlab:gitlab for the enterprise edition, while Community Edition is not affected. The issue was reported via HackerOne (report 3307422) and tracked in GitLab issue 573766, with remediation in the December 2025 patch release.
Know when Graphql 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:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Network-reachable GraphQL API (AV:N/AC:L) exploitable by any authenticated user (PR:L) with no UI; limited private-data disclosure gives C:L and no I/A impact.
Primary rating from Vendor (gitlab).
CVSS VectorVendor: gitlab
DescriptionCVE.org
GitLab has remediated an issue in GitLab EE affecting all versions from 13.2 before 18.4.6, 18.5 before 18.5.4, and 18.6 before 18.6.2 that could have allowed an authenticated user to disclose sensitive information from private projects by executing specifically crafted GraphQL queries.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Affected Products (CPE)CVE.org
Unauthenticated denial of service in GitLab CE/EE (all versions from 18.4.6 before 19.1.8, 19.2 before 19.2.6, and 19.3
Unauthenticated attackers can publish arbitrary persisted query documents and claim (squat) query aliases on WordPress s
Stump through 0.1.10 allows any authenticated user with the shared AccessSmartList permission to overwrite, delete, or t
Authorization bypass in Craft CMS 5.0.0 through 5.10.x allows an authenticated holder of a narrowly site-scoped GraphQL
Versions of the package graphql from 16.3.0 and before 16.8.1 are vulnerable to Denial of Service (DoS) due to insuffici
Server-side request forgery in Chaskiq through 2.0.3 allows unauthenticated attackers to make the server fetch arbitrary
Prototype pollution in `@graphql-tools/utils` `mergeDeep()` lets a remote, unauthenticated client submit a single aliase
JWT authentication bypass in @neo4j/graphql allows unauthenticated remote clients to forge arbitrary JWT claims over Gra
Uncontrolled resource consumption in the Strawberry GraphQL library's legacy graphql-ws subscription handler (versions 0
Authentication bypass in @neo4j/graphql exposes admin-restricted custom-resolver fields to any authenticated user holdin
silverstripe-graphql is a package which serves Silverstripe data in GraphQL representations. Rated high severity (CVSS 7
`silverstripe/graphql` serves Silverstripe data as GraphQL representations. Rated high severity (CVSS 7.5), this vulnera
NVD
CVE.org
EPSS
GitHub PoC
Exploit-DB