Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privileged GitLab user
-
DeliveryTarget protected branch with approval policy
-
ExploitTrigger approval rule synchronization flaw
-
ExecutionBypass required merge approval
-
ImpactMerge unapproved changes
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Incorrectly specified target
|
| Exploitation Conditions | Exploitation requires an authenticated GitLab EE user (PR:L) with sufficient access to interact with a project whose protected branch is governed by a required merge-request approval policy - the vulnerability only manifests during approval rule synchronization and only 'under certain conditions,' consistent with the high attack complexity (AC:H). This is Enterprise Edition specific (approval policies are an EE feature), so Community Edition deployments are unaffected. Limiting factors: no path exists without prior authentication, the targeted project must actually enforce a required approval policy on a protected branch, and the unspecified triggering conditions plus AC:H mean exploitation is not reliable or trivial. Impact is confined to integrity of the merge-approval control; there is no confidentiality or availability consequence. |
| Impact | This is a genuinely low-priority issue despite the attention GitLab vulnerabilities typically attract. The CVSS 3.1 base score of 3.1 is consistent with its vector (AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N): network-reachable but requiring high attack complexity ('under certain conditions'), an already-authenticated user with low privileges, and yielding only limited integrity impact (I:L) with no confidentiality or availability loss. Exploitation status is 'publicly available exploit code exists' - a HackerOne report (#3797008) is referenced - but this is NOT CISA KEV and there is no evidence of active exploitation; POC availability and active exploitation are distinct signals and should not be conflated. No EPSS score was provided in the input, so probabilistic exploitation likelihood cannot be assessed here. An SSVC decision was not supplied either. The realistic risk is a trusted insider or low-privileged project member bypassing a required merge-request approval policy on a protected branch - a governance/integrity-control weakness, not a path to code execution, data theft, or outage. The high attack complexity and the requirement for pre-existing authenticated access substantially limit real-world exploitability, so this is a low-severity integrity issue rather than a high-impact priority. |
| Exploit ScenarioDerived | A low-privileged but authenticated GitLab EE user with push access to a project targets a protected branch guarded by a required merge-request approval policy. By exploiting improper access control during approval rule synchronization under specific conditions, they merge changes that should have required mandatory reviewer approval, undermining the branch protection control. Public exploit detail exists in the referenced HackerOne report (#3797008). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 22, 2026
Authenticated users of GitLab Enterprise Edition can bypass a required merge request approval policy on a protected branch under specific synchronization conditions, weakening the branch's approval gate without gaining any read or availability impact. The flaw affects EE versions from 17.4 before 19.3.6, 19.4 before 19.4.3, and 19.5 before 19.5.1, and Community Edition is unaffected because approval policies are an EE feature. GitLab has released fixed versions, but publicly available exploit code exists (a HackerOne report is referenced), and the CVSS score is only 3.1 (AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N), consistent with a low-priority integrity issue rather than a high-risk compromise.
RemediationAI
Vendor-released patch: upgrade GitLab EE to 19.3.6, 19.4.3, or 19.5.1 (or later) as described in the patch release advisory at https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-5-1-released/; no configuration change is a substitute for the fix. If immediate upgrade is not possible, reduce exposure by temporarily tightening who can create or edit merge request approval rules and protected-branch settings (for example restricting these to a small maintainer/owner group), with the trade-off that legitimate project owners lose self-service policy changes; alternatively, require a second, manually verified approval outside GitLab for merges to the most sensitive protected branches, at the cost of slower review throughput. Audit merge request approval events and approval-rule changes on protected branches for anomalies, and monitor the vendor work item at https://gitlab.com/gitlab-org/gitlab/-/work_items/604630 for updates, noting that public exploit details are referenced via https://hackerone.com/reports/3797008. Because exploitation requires an authenticated EE account and a project with an enforced approval policy, limiting low-trust accounts' membership in such projects is a useful compensating control, though it does not remove the underlying defect.
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 is tracked as CWE-706 (Use of Incorrectly-Resolved Name or Reference), meaning that during synchronization of merge request approval rules GitLab EE can resolve or match the wrong rule/reference, so a required approval policy attached to a protected branch is not correctly enforced. Approval policies and protected-branch approval rules are Enterprise Edition functionality; the CPE cpe:2.3:a:gitlab:gitlab:*:*:*:*:*:*:*:* covers the GitLab application broadly, while the description narrows the impact to EE. Because the defect only manifests 'under certain conditions' during approval rule synchronization, the attack complexity is high (AC:H) and exploitation is neither reliable nor trivial. The attacker needs a low-privileged authenticated account (PR:L) with enough access to interact with an affected project, and the only outcome is a limited integrity impact (I:L) on the merge-approval control - no confidentiality or availability effect, and no unauthenticated path.
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:N/S:U/C:N/I:L/A:N
Authenticated low-privileged user over the network (AV:N/PR:L), only 'certain conditions' trigger it (AC:H), limited integrity impact from bypassing an approval control with no confidentiality or availability effect.
Primary rating from Vendor (GitLab).
CVSS VectorVendor: GitLab
Lifecycle Timeline
2DescriptionCVE.org
GitLab has remediated an issue in GitLab EE affecting all versions from 17.4 before 19.3.6, 19.4 before 19.4.3, and 19.5 before 19.5.1 that under certain conditions could have allowed an authenticated to bypass a required merge request approval policy on a protected branch due to improper access control during approval rule synchronization.
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.
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-107678
GHSA-xxf3-q32p-w3cc
NVD
CVE.org
EPSS
Exploit-DB