GitLab has patched a critical flaw that lets unauthenticated attackers delete public projects and user data. The GitLab CVE-2026-19478 vulnerability carries a CVSS score of 9.4. Worse, security firm watchTowr confirmed active exploitation, and full technical details plus proof-of-concept code are now public.
TL;DR
CVE-2026-19478 is a critical GitLab bug in the GraphQL query handler. It allows unauthenticated attackers to modify or delete public projects. Attackers are already exploiting it in the wild, and a public PoC lab exists.
- Product: GitLab
- Vulnerabilities: 2 flaws (CVE-2026-19478, CVE-2026-19650)
- Highest severity: 9.4 (Critical · CVSSv3)
- Worst impact: Improper Control of Generation of Code ('Code Injection') in
- Status: Exploited in the wild
- Action: Update to 18.11.11, 19.0.8, 19.1.6, 19.2.4 now
| CVE | CVSS (CVSSv3) | Type | Fixed in | Status |
|---|---|---|---|---|
| CVE-2026-19478 | 9.4 | CWE-94 | 18.11.11, 19.0.8, 19.1.6 (+1) | Not exploited |
| CVE-2026-19650 | 7.1 | CWE-352 | 18.11.11, 19.0.8, 19.1.6 (+1) | Not exploited |
Why It Matters
The stakes here are high. An attacker needs no login and no user interaction. From there, they can wipe entire repositories.
watchTowr reported even broader damage. Their researchers noted an attacker can “forge merge records to make it appear as if a fix landed when it didn’t, and ban project maintainers.” That risk poisons software supply chains directly.
Exploited in the Wild With Public PoC
This is not a theoretical threat. watchTowr reproduced the flaw within minutes of disclosure. They also observed real exploitation against their honeypot network.
Principal researcher Jake Knott warned about the shrinking response window. He said “AI-enabled attackers are able to compress the time from disclosure to exploitation.” Meanwhile, a public proof-of-concept lab for CVE-2026-19478 now circulates on GitHub, lowering the bar further.
How the Attack Works
The bug lives in GitLab’s @gl_introduced GraphQL directive. This feature normally supports rolling deploys. However, a flawed fallback let unknown fields resolve to arbitrary methods on the target object.
As a result, an attacker could name a “future field” that maps to a dangerous method. The server would then invoke it. Researchers also flagged the second issue, CVE-2026-19650, a CSRF weakness rated High.
Affected Versions
Only self-managed installations need to act. GitLab.com and Dedicated already run patched builds.
The following CE and EE versions are vulnerable:
- All versions from 18.2 before 18.11.11
- 19.0 before 19.0.8
- 19.1 before 19.1.6
- 19.2 before 19.2.4
Patch and Mitigation Steps
Patch immediately. Fixed releases are 18.11.11, 19.0.8, 19.1.6, and 19.2.4. You can review the official notes in the GitLab 19.2.4 patch release advisory.
If you cannot patch right away, reduce your exposure. Restrict unauthenticated access to /api/graphql, or remove public repository access entirely. Additionally, hunt web logs for requests containing @gl_introduced to spot probes.
Support Our Threat Intelligence
If you find our CVE report and cybersecurity news helpful, consider supporting our work.