Cyber Resilience

CVE-2025-2246

Access Control in Gitlab ≤ 18.1.5

Published
27 August 2025
Modified
17 June 2026
CVSS Score v3.1 5.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N
EPSS Score 0.0028 20th percentile
Risk Priority 35 floored blend · peak EPSS

Summary

CVE-2025-2246 is a medium-severity Missing Authorization (CWE-862) vulnerability in Gitlab Gitlab. Its CVSS base score is 5.8 (Medium).

Operationally, ranked at the 20th 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-3 (Access Enforcement) and AC-14 (Permitted Actions Without Identification or Authentication) — 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 CE/EE affecting all versions before 18.1.5, 18.2 before 18.2.5, and 18.3 before 18.3.1 that could have allowed unauthenticated users to access sensitive manual CI/CD variables by querying the GraphQL API.

CWE(s)

Related Threats

CVEs Like This One

CVE-2025-11989Same product: Gitlab Gitlab
CVE-2025-5846Same product: Gitlab Gitlab
CVE-2024-8114Same product: Gitlab Gitlab
CVE-2025-5315Same product: Gitlab Gitlab
CVE-2024-12431Same product: Gitlab Gitlab
CVE-2024-1539Same product: Gitlab Gitlab
CVE-2023-4630Same product: Gitlab Gitlab
CVE-2023-0805Same product: Gitlab Gitlab
CVE-2025-1299Same product: Gitlab Gitlab
CVE-2023-5600Same product: Gitlab Gitlab

Affected Assets

gitlab
gitlab
18.3.0 · ≤ 18.1.5 · ≤ 18.1.5 · 18.2.0 — 18.2.5

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)
  • AC-3 Access Enforcement
  • AC-6 Least Privilege
  • AC-14 Permitted Actions Without Identification or Authentication
Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 5 hardening rules · 3 OS baselines
Validate
Prove the fix (OWASP ASVS)

Mitigating Controls (NIST 800-53 r5) AI

prevent

Directly enforces authorization checks on GraphQL queries so unauthenticated users cannot retrieve protected CI/CD variables.

prevent

Ensures CI/CD variables are only accessible to accounts with an explicit need-to-know, blocking broad unauthenticated exposure.

prevent

Requires explicit definition and enforcement of actions permitted without authentication, eliminating the unintended GraphQL access path.

Mitigating Controls (NIST CSF 2.0) AI

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

PR.AA-05 full match
prevents

Explicitly requires defining, enforcing, and reviewing authorizations and least privilege, directly preventing missing authorization 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.

prevents

Requiring authentication and credentials before any access occurs eliminates the absence of authorization checks that would otherwise allow an unauthenticated actor to reach protected resources.

prevents

Requiring formal authorization of every access request before rights are granted ensures that checks for required permissions are performed, preventing missing authorization checks from being introduced.

prevents

Mandatory authorization checks and central records of granted rights ensure that every access attempt is preceded by an explicit decision rather than relying on missing checks.

mitigates

Segregating the approval of access rights from their implementation provides an independent check that reduces the impact of missing authorization checks in the resulting system configuration.

detects

By requiring competent outsiders to verify that every function enforces the need-to-know principle, the control lowers the likelihood that missing authorization checks persist undetected.

prevents

Defining authorization responsibilities and reviewing risk-treatment progress throughout the project lifecycle catches missing authorization checks before the system is deployed.

References