Skip to main content

GitLab EE CVE-2026-92470

| EUVDEUVD-2026-85734 HIGH
Missing Authorization (CWE-862)
2026-09-23 GitLab GHSA-f2v3-pf6x-rw2j
7.7
CVSS 3.1 · Vendor: GitLab
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege GitLab user
  2. Delivery
    Locate job with debug-mode trace
  3. Exploit
    Invoke Duo AI troubleshooting on the job
  4. Execution
    Bypass missing authorization check
  5. Persist
    Read exposed CI/CD variable values
  6. Impact
    Exfiltrate credentials/tokens

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated GitLab EE account (PR:L) plus two specific feature/configuration prerequisites: a CI/CD job whose trace was captured in debug mode (CI_DEBUG_TRACE enabled, which itself expands variable values into the trace) AND the GitLab Duo AI troubleshooting feature enabled/licensed on the instance. The missing authorization check on the Duo AI troubleshooting path is what allows a user lacking rights to those variables to read them. Limiting factors: exploitation is network-reachable but gated behind authentication, requires the non-default combination of debug tracing and Duo AI, and is described as possible only 'under certain conditions' - so default hardened instances without debug tracing or without Duo AI are not exposed. Affects EE 18.7 up to the patched 19.2.7/19.3.3/19.4.1 releases.

Impact

This is a genuine but moderate-priority issue rather than a critical one. The vendor CVSS of 7.7 (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N) reflects network-reachable, authenticated-but-low-privilege access with a scope change and high confidentiality impact - appropriate for a missing-authorization flaw (CWE-862) that leaks CI/CD secrets across a trust boundary. However, the AC:L rating is arguably optimistic: the description says exploitation is possible only 'under certain conditions,' and the specific attack path (reading debug-mode job traces via the GitLab Duo AI troubleshooting feature) implies two non-default prerequisites - debug tracing (CI_DEBUG_TRACE) enabled on the job and the GitLab Duo AI feature enabled/licensed - which push real-world complexity toward AC:H. There is no EPSS score, no CISA KEV listing, and no public proof-of-concept in the provided data, so there is no evidence of active exploitation or automatable mass abuse. Net: a real secret-disclosure bug worth patching promptly given GitLab's large footprint, but the conditional prerequisites and authenticated requirement make widespread opportunistic exploitation unlikely. Note the input tag 'Authentication Bypass' contradicts the actual weakness (CWE-862 missing authorization, i.e. an authorization/access-control defect, not an authentication bypass).

Exploit ScenarioDerived

An authenticated low-privilege GitLab user (e.g. a member without rights to a project's protected CI/CD variables) invokes the GitLab Duo AI troubleshooting feature against a job whose trace was captured in debug mode, where the missing authorization check lets them read the debug trace content and recover masked/protected CI/CD variable values (tokens, credentials). No public exploit code is identified at time of analysis, and success depends on debug tracing and Duo AI both being in use.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 23, 2026

An authenticated GitLab EE user can read sensitive CI/CD variable values from debug-mode job traces via the Duo AI troubleshooting feature because of a missing authorization check (CWE-862). Affected versions are GitLab EE 18.7 before 19.2.7, 19.3 before 19.3.3, and 19.4 before 19.4.1. Exploitation is gated behind authentication and requires the non-default combination of CI_DEBUG_TRACE debug tracing and the Duo AI feature, and no public exploit code has been identified at time of analysis; this is a moderate-priority issue rather than a critical one.

RemediationAI

Upgrade to the fixed versions: GitLab EE 19.2.7, 19.3.3, or 19.4.1, as applicable to your release branch. Vendor-released patch: 19.2.7, 19.3.3, 19.4.1. If immediate upgrade is not possible, disable the Duo AI troubleshooting feature or restrict access to it, and avoid enabling CI_DEBUG_TRACE on jobs that handle sensitive variables; note that disabling Duo AI removes its troubleshooting capabilities, and disabling debug tracing hinders job debugging. Consult the vendor advisory at https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-4-1-released/ for detailed patch information.

Affected VersionsENISA

GitLab 19.3 <19.3.3
GitLab 18.7 <19.2.7
GitLab 19.4 <19.4.1

Affected Packages

euvd gitlab fix: 19.2.7, 19.3.3, 19.4.1

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 issue is a missing authorization check (CWE-862) in GitLab EE's Duo AI troubleshooting feature. GitLab CI/CD job traces normally capture job output; when CI_DEBUG_TRACE is enabled, variable values are expanded into the trace, making them sensitive. The Duo AI troubleshooting feature processes job traces to provide assistance, but a missing authorization check on that path allows an authenticated user who does not have rights to the CI/CD variables to read their values through Duo AI. The affected CPE is cpe:2.3:a:gitlab:gitlab:*:*:*:*:*:*:*:* (GitLab EE). The assessed CVSS vector is CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N, indicating network reachability but high attack complexity because two feature prerequisites must be satisfied, and a scope change with high confidentiality impact.

Know when Ruby 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

Vendor (GitLab) PRIMARY 7.7 HIGH
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 6.3 MEDIUM

Network-reachable and authenticated (PR:L); AC:H because exploitation needs both debug-mode traces and Duo AI enabled ('certain conditions'); S:C/C:H for cross-boundary secret disclosure, no integrity/availability impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitLab).

CVSS VectorVendor: GitLab

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
Sep 24, 2026 - 02:01 EUVD
CVE Published
Sep 23, 2026 - 23:05 cve.org
HIGH 7.7

DescriptionCVE.org

GitLab has remediated an issue in GitLab EE affecting all versions from 18.7 before 19.2.7, 19.3 before 19.3.3, and 19.4 before 19.4.1 that under certain conditions could have allowed an authenticated user to access sensitive CI/CD variable values from debug-mode job traces through the Duo AI troubleshooting feature due to missing authorization checks.

Executive ViewAI

Why It Matters

GitLab Enterprise Edition deployments using Duo AI troubleshooting and CI debug tracing face a high-severity exposure that can leak secrets from CI/CD variables. Because these variables frequently hold credentials for cloud, deployment, and third-party systems, a disclosure could enable unauthorized access to critical environments and supply-chain workflows. No public exploit identified at time of analysis, but leadership should treat this as a material risk and prioritize version review, configuration hardening, and patch tracking across affected GitLab EE branches.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include disabling CI_DEBUG_TRACE and Duo AI troubleshooting, rotating potentially exposed CI/CD variables, restricting variable and job trace access, and monitoring for anomalous trace access until patched.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
High
GitLab EE is a widely deployed enterprise DevOps/CI-CD platform
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

More in Ruby

View all
CVE-2017-17405 HIGH POC
8.8 Dec 15

Ruby before 2.4.3 allows Net::FTP command injection. Rated high severity (CVSS 8.8), this vulnerability is remotely expl

CVE-2017-17790 CRITICAL POC
9.8 Dec 20

The lazy_initialize function in lib/resolv.rb in Ruby through 2.4.3 uses Kernel#open, which might allow Command Injectio

CVE-2017-14064 CRITICAL POC
9.8 Aug 31

Ruby through 2.2.7, 2.3.x through 2.3.4, and 2.4.x through 2.4.1 can expose arbitrary memory during a JSON.generate call

CVE-2016-2336 CRITICAL POC
9.8 Jan 06

Type confusion exists in two methods of Ruby's WIN32OLE class, ole_invoke and ole_query_interface. Rated critical severi

CVE-2026-77602 CRITICAL POC
9.9 Sep 23

Authenticated remote code execution in OpenC3 COSMOS (Ruby gem 'openc3' versions 5.1.0 through 7.2.1) lets any logged-in

CVE-2016-2337 CRITICAL POC
9.8 Jan 06

Type confusion exists in _cancel_eval Ruby's TclTkIp class method. Rated critical severity (CVSS 9.8), this vulnerabilit

CVE-2016-2339 CRITICAL POC
9.8 Jan 06

An exploitable heap overflow vulnerability exists in the Fiddle::Function.new "initialize" function functionality of Rub

CVE-2017-9225 CRITICAL POC
9.8 May 24

An issue was discovered in Oniguruma 6.2.0, as used in Oniguruma-mod in Ruby through 2.4.1 and mbstring in PHP through 7

CVE-2026-27614 CRITICAL POC
9.3 Feb 25

Stored XSS in Bugsink error tracking tool before 2.0.13 allows unauthenticated attackers to inject persistent scripts th

CVE-2017-0898 CRITICAL POC
9.1 Sep 15

Ruby before 2.4.2, 2.3.5, and 2.2.8 is vulnerable to a malicious format string which contains a precious specifier (*) w

CVE-2013-4164 MEDIUM POC
6.8 Nov 23

Heap-based buffer overflow in Ruby 1.8, 1.9 before 1.9.3-p484, 2.0 before 2.0.0-p353, 2.1 before 2.1.0 preview2, and tru

CVE-2026-71847 HIGH POC
8.7 Aug 07

Heap-use-after-free in the Ruby json gem's native C extension (versions 2.20.0 through 2.21.1) allows an unauthenticated

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy