Skip to main content

GitLab CVE-2026-19478

| EUVDEUVD-2026-60443 CRITICAL
Code Injection (CWE-94)
2026-08-17 GitLab GHSA-6whr-xjjm-6pf8
9.1
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Access
    Identify exposed GitLab GraphQL endpoint
  2. Exploit
    Craft malicious GraphQL directive request
  3. Execution
    Bypass authorization checks
  4. Impact
    Modify or delete public projects and user data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

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

Exploitation Conditions

Exploitation requires network reachability to the target GitLab instance's GraphQL API and abuse of a specific GraphQL directive; the CVSS vector (AV:N/AC:L/PR:N/UI:N) indicates no authentication and no user interaction are needed. Limiting factors: the vendor states the flaw is exploitable only 'under certain conditions,' the impact is confined to public projects and user data (not private/authenticated-only resources per the description), and only unpatched versions in the listed ranges are affected - instances already on 18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 or GitLab.com are not exposed. The exact triggering condition is not fully specified in available data and should be confirmed against the vendor work item.

Impact

This is a genuine high-priority issue rather than an inflated CVSS number: the vector is fully remote and unauthenticated (AV:N/AC:L/PR:N/UI:N) against a widely deployed developer platform, exploit code is public via HackerOne report 3926431, and integrity/availability impact is HIGH. That combination - no authentication, low complexity, public POC, and a broad install base - means any organization running a self-managed GitLab instance should treat patching as urgent, and even a mid-sized operator with a single internal GitLab server should not defer it. The main tempering signals are that the confidentiality impact is only LOW (C:L), the vendor notes exploitation occurs 'under certain conditions' (implying it is not universally trivial against every instance), and there is no CISA KEV listing or evidence of in-the-wild abuse yet, so the public POC represents opportunity rather than confirmed mass exploitation. One data conflict to verify: the CWE-94/'RCE' tagging implies code execution, while the description only substantiates unauthorized data modification/deletion - treat the RCE characterization as unconfirmed pending vendor detail.

Exploit ScenarioDerived

An attacker with no account crafts a malicious GraphQL request incorporating the vulnerable directive and sends it to an internet-exposed GitLab instance, causing unauthorized modification or deletion of public project contents and user data. Because publicly available exploit code exists (HackerOne 3926431) and no authentication or user interaction is required, this can be automated and sprayed across exposed GitLab servers.

Act Now Prioritize within 24-48h. Why: CRITICAL severity + public POC available.
1 public PoC Patch available 0.7% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Aug 17, 2026

Unauthenticated data tampering in GitLab CE/EE (18.2-18.11.10, 19.0-19.0.7, 19.1-19.1.5, 19.2-19.2.3) lets a remote attacker modify or delete public projects and user data by abusing a GraphQL directive, per CVE-2026-19478 (CVSS 9.4). The flaw was self-reported by GitLab and publicly available exploit code exists via a HackerOne disclosure, though it is not listed in CISA KEV. Impact is weighted toward integrity and availability rather than data theft (CVSS C:L/I:H/A:H).

RemediationAI

Vendor-released patch: upgrade to GitLab 18.11.11, 19.0.8, 19.1.6, or 19.2.4 (or later) depending on your release branch, as described at https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-2-4-released/. Self-managed operators should apply the patch immediately given the public exploit; GitLab.com is remediated by the vendor. If an emergency upgrade window is not immediately available, restrict network reachability of the GitLab instance and its GraphQL endpoint (e.g., place it behind a VPN/allowlist and limit exposure of the /api/graphql path), accepting that this breaks external integrations, webhooks, and any public/anonymous access to projects; monitor for anomalous mutation/deletion activity on public projects as a detective control. There is no vendor-documented in-product configuration workaround, so upgrading is the only reliable fix.

Affected VersionsENISA

GitLab 19.1 <19.1.6
GitLab 18.2 <18.11.11
GitLab 19.0 <19.0.8
GitLab 19.2 <19.2.4

Affected Packages

euvd gitlab fix: 18.11.11, 19.0.8, 19.1.6, 19.2.4

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

GitLab exposes a large GraphQL API used by its web UI, CI/CD, and integrations. The root cause is classed as CWE-94 (Improper Control of Generation of Code / code injection) and manifests through a GraphQL directive - a query-annotation mechanism that alters execution behavior - that under certain conditions bypasses authorization and mutates persistent state. The affected component is the GitLab application itself (cpe:2.3:a:gitlab:gitlab), meaning both self-managed CE/EE instances and, prior to patching, GitLab.com are in scope for the underlying code. The vendor's own tags label this 'RCE / Code Injection,' but the published impact is scoped to unauthorized modification and deletion of project and user data rather than confirmed arbitrary code execution.

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

Vendor (GitLab) PRIMARY CRITICAL
NVD 9.1 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
vuln.today AI 9.4 CRITICAL

Remote, unauthenticated, no user interaction (AV:N/AC:L/PR:N/UI:N) via GraphQL; impact is data modification/deletion so I:H/A:H with only incidental read exposure (C:L).

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

Primary rating from Vendor (GitLab).

CVSS VectorNVD

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

Lifecycle Timeline

3
CVSS changed
Sep 02, 2026 - 12:52 NVD
9.4 (CRITICAL) 9.1 (CRITICAL)
Patch available
Aug 17, 2026 - 21:17 EUVD
CVE Published
Aug 17, 2026 - 20:04 cve.org
CRITICAL 9.4

DescriptionNVD

GitLab has remediated an issue in GitLab CE/EE affecting all versions from 18.2 before 18.11.11, 19.0 before 19.0.8, 19.1 before 19.1.6, and 19.2 before 19.2.4 that under certain conditions could allow an unauthenticated user to remotely modify or delete public projects and user data via a GraphQL directive.

Latest POC

1 public PoC link from nuclei

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

GitLab Community and Enterprise editions (versions 18.2-19.2.3) contain a critical, unauthenticated vulnerability allowing remote attackers to modify or delete public projects and user data without credentials. This directly impacts code integrity, audit compliance, and project availability for any organization running affected versions. Remediation is urgent given the public availability of working exploits and absence of a released patch.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: disable or restrict GraphQL directive functionality via network access controls; restrict public project visibility to internal-only or require authentication; enable comprehensive audit logging and real-time alerting for project and user data modifications; review modification logs for evidence of exploitation; maintain active monitoring of GitLab security advisories for patch release.

Threat Model

4 threats: Elevation of Privilege, Tampering, Denial of Service

4-step attack chain with trust boundaries and controls

Full threat model - attack chain, trust boundaries, controls per stage and evidence - is part of the Pro and Business plans.

Threat Intelligence Overview

EPSS Score
0.7%
Top 49% exploitable
Prevalence
High
widely deployed enterprise source-code and CI/CD platform
CIRCL KEV
Listed
Community Exploited Vulnerability
Threat Intel
2
1 sources
Social Media
138
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment NEWS POC (1) CIRCL 138 sightings VulDB

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 CRITICAL
CISA KEV No
Public POC Yes
EPSS 0.7%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity + public POC available
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
Out-of-Cycle
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Partial

Priority Score

67
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +46
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

More in Gitlab

View all
CVE-2021-22205 CRITICAL POC
10.0 Apr 23

An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9. Rated critical severity (CVSS 10

CVE-2023-7028 CRITICAL POC
10.0 Jan 12

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.

CVE-2021-22175 CRITICAL POC
9.8 Jun 11

When requests to the internal network for webhooks are enabled, a server-side request forgery vulnerability in GitLab af

CVE-2026-85706 CRITICAL POC
10.0 Sep 12

Unauthenticated arbitrary file read in GitLab CE/EE lets remote attackers retrieve files from the GitLab server via the

CVE-2013-4490 MEDIUM POC
6.5 May 13

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

CVE-2022-2992 CRITICAL POC
9.9 Oct 17

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

CVE-2026-97229 CRITICAL POC
10.0 Oct 13

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)

CVE-2026-87719 CRITICAL POC
9.9 Sep 12

Sensitive credential and configuration disclosure in GitLab Enterprise Edition allows an authenticated user with Duo Cha

CVE-2018-18843 CRITICAL POC
10.0 Dec 04

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

CVE-2026-93577 CRITICAL POC
9.9 Sep 23

Authenticated code execution on the GitLab server is possible in GitLab CE/EE 19.2 through 19.4.0, where an integer over

CVE-2026-89078 CRITICAL POC
9.9 Sep 23

Authenticated users who can define or modify a CI/CD configuration can achieve remote code execution on GitLab CE/EE ser

CVE-2026-61560 CRITICAL POC
9.8 Sep 15

Unauthenticated path traversal in the @zereight/mcp-gitlab Model Context Protocol server prior to version 2.1.27 allows

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