Security Resilience

CVE-2023-3509

Access Control in Gitlab ≤ 16.7.6

Published
21 February 2024
Modified
21 November 2024
CVSS Score v3.1 3.7
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N
EPSS Score 0.0032 24th percentile
Risk Priority 31 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2023-3509 is a low-severity Incorrect Authorization (CWE-863) vulnerability in Gitlab Gitlab. Its CVSS base score is 3.7 (Low).

Operationally, ranked at the 24th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to AC-24 (Access Control Decisions) and AC-25 (Reference Monitor) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

An issue has been discovered in GitLab affecting all versions before 16.7.6, all versions starting from 16.8 before 16.8.3, all versions starting from 16.9 before 16.9.1. It was possible for group members with sub-maintainer role to change the title of…

more

privately accessible deploy keys associated with projects in the group.

CWE(s)

Related Threats

CVEs Like This One

CVE-2026-15423Same product: Gitlab Gitlab
CVE-2025-12555Same product: Gitlab Gitlab
CVE-2023-5198Same product: Gitlab Gitlab
CVE-2024-10043Same product: Gitlab Gitlab
CVE-2024-4011Same product: Gitlab Gitlab
CVE-2024-10219Same product: Gitlab Gitlab
CVE-2025-3396Same product: Gitlab Gitlab
CVE-2023-4812Same product: Gitlab Gitlab
CVE-2023-4658Same product: Gitlab Gitlab
CVE-2025-4972Same product: Gitlab Gitlab

Affected Assets

gitlab
gitlab
16.9.0 · ≤ 16.7.6 · 16.8.0 — 16.8.3

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

AC-3 directly requires correct enforcement of authorization decisions on every access request, structurally preventing incorrect checks.

AC-24 ensures access-control decisions are made and applied consistently, reducing the chance of an incorrect authorization result.

A reference monitor that is always invoked and tamper-proof forces every authorization decision through a verified, correct path.

Least-privilege assignments shrink the set of authorizations that must be checked correctly, limiting exposure to flawed checks.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

Requiring consistency between access rights and classification plus formal approval steps ensures that the authorization logic correctly distinguishes between entities that should and should not be granted access.

blocks

A.5.18's provisioning, revocation, review and adjustment of access rights (incl. before role changes/termination, with segregation and owner approval) directly stops incorrect authorization decisions from being exploitable in the vast majority of cases; the bounded remainder is incorrectness inside the authorization logic itself (e.g. flawed conditional or missing check) rather than rights that were wrongly granted.

blocks

A.8.3 directly mandates restricting access to information per policies via configuration, identity/group controls, isolation, and dynamic techniques that enforce correct authorization decisions, addressing most but not all slices of CWE-863 (e.g., remainder in non-access-decision authorization errors like timing or environmental factors).

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-863, a class-level weakness, and none of its children carries one either.

References