Severity by source
AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N
Network API access, no complexity or interaction required, but Maintainer role mandatory (PR:H); only protected branch integrity is impacted, no confidentiality or availability effect.
Primary rating from Vendor (GitLab).
CVSS VectorVendor: GitLab
Lifecycle Timeline
3DescriptionCVE.org
GitLab has remediated an issue in GitLab CE/EE affecting all versions from 12.8 before 19.0.5, 19.1 before 19.1.3, and 19.2 before 19.2.1 that under certain conditions could have allowed an authenticated user with Maintainer role to modify protected branch configuration due to improper authorization in a projects API endpoint.
AnalysisAI
Improper authorization in a GitLab CE/EE projects API endpoint allows an authenticated user holding the Maintainer role to modify protected branch configurations beyond what their role should permit, across all versions from 12.8 through 19.2.0. Maintainer-role users - commonly assigned in enterprise GitLab deployments - can exploit this to weaken or remove branch protection rules that enforce code review gates and direct-push restrictions. A publicly available exploit exists via HackerOne report 3807593; no confirmed active exploitation (CISA KEV) has been identified at time of analysis, though the POC materially lowers the bar for exploitation.
Technical ContextAI
GitLab CE/EE exposes a REST-based projects API used for repository and branch management. CWE-862 (Missing Authorization) identifies the root cause: a specific API endpoint within the projects API fails to enforce the boundary between the Maintainer and Owner/Administrator roles when processing requests to alter protected branch settings. In GitLab's permission model, protected branches are a security control intended to prevent direct pushes, enforce merge request approvals, and restrict who can merge - configuration of these is deliberately gated above the Maintainer level. The affected CPE is cpe:2.3:a:gitlab:gitlab:*:*:*:*:*:*:*:* spanning a wide version range starting at 12.8, indicating the authorization gap persisted across multiple major release trains. The flaw was internally tracked as GitLab work item 604665 and publicly disclosed via HackerOne report 3807593.
RemediationAI
Upgrade to one of the three patched releases: GitLab 19.0.5, 19.1.3, or 19.2.1, as confirmed by the GitLab patch advisory at https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-2-1-released/. Organizations unable to upgrade immediately should audit current Maintainer-role assignments across projects, removing any users whose Maintainer grant is broader than strictly required - this reduces the exploitable population without changing product behavior. Additionally, GitLab administrators can temporarily enforce stricter controls by requiring Owner-level approval for all protected branch configuration changes via group-level access controls, though this may introduce workflow friction for legitimate Maintainer operations. Self-managed GitLab instances should prioritize patching over workarounds given the public POC availability.
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.
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
The Ruby SAML library is for implementing the client side of a SAML authorization. Rated critical severity (CVSS 9.8), t
A hardcoded password was set for accounts registered using an OmniAuth provider (e.g. Rated critical severity (CVSS 9.8)
An issue has been discovered in GitLab CE/EE affecting all versions starting from 12.10 before 14.6.5, all versions star
When requests to the internal network for webhooks are enabled, a server-side request forgery vulnerability in GitLab af
An issue has been discovered in GitLab CE/EE affecting all versions starting from 13.7.9 before 13.8.7, all versions sta
Same weakness CWE-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-50480
GHSA-35pc-qwv6-4858