Skip to main content

GitLab CE/EE CVE-2026-9694

| EUVDEUVD-2026-36224 MEDIUM
Improper Neutralization of Substitution Characters (CWE-153)
2026-06-11 GitLab GHSA-5cr4-qwvx-32j2
4.3
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Access
    Enumerate target project's Service Desk email address
  2. Delivery
    Craft email reply with template substitution payload
  3. Exploit
    Send malicious email to Service Desk endpoint
  4. Execution
    GitLab processes email through vulnerable template engine
  5. Persist
    Injected content rendered as GitLab Support Bot message
  6. Impact
    Victim views issue and is exposed to attacker-controlled content

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Record delimiter neutralization
Exploitation Conditions

The GitLab Service Desk feature must be enabled on the target project - this is a non-default, opt-in feature requiring project maintainer or administrator configuration. The attacker must be able to send email to the project's Service Desk address (which may be discoverable via the project's issue tracker UI or email headers). The attack additionally requires 'certain conditions' to be met, per the vendor description, which aligns with the AC:H CVSS rating; these specific conditions are not further enumerated in available public data and should be referenced in GitLab's internal issue (work item 601330). User interaction is required (UI:R) - a legitimate user must view the affected issue thread for the injected content to have social-engineering impact. There is an unresolved conflict between the description's 'unauthenticated user' language and the CVSS vector's PR:L designation; if PR:L is accurate, the attacker must possess at least Reporter-level access to the GitLab instance, which further limits exposure. No exploitation occurs on instances where Service Desk is not configured.

Impact

Real-world risk is constrained by multiple compounding factors. The official CVSS base score of 2.6 reflects AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:L/A:N - high attack complexity, low privileges required, and user interaction needed for impact materialization, with only a low integrity effect and no confidentiality or availability impact. IMPORTANT CONFLICT: The official CVSS vector designates PR:L (some privileges required), yet the CVE description explicitly states the vulnerability can be triggered by 'an unauthenticated user.' This discrepancy is not resolved by available data and should be verified with the vendor - if PR:N is accurate, the practical attack surface broadens. EPSS data is not provided in this intelligence set. No KEV listing exists, indicating no confirmed widespread active exploitation, though a publicly available exploit on HackerOne elevates the realistic threat posture above theoretical. The AC:H rating aligns with the description's qualifier 'under certain conditions,' suggesting the attack is not reliably reproducible in all deployments. The impact is limited to content integrity - an attacker forging Support Bot messages could enable social engineering or phishing within the platform but cannot directly exfiltrate data or deny service.

Exploit ScenarioDerived

An attacker obtains or enumerates the Service Desk email address for a GitLab project, then crafts a reply email whose body contains template substitution sequences targeting GitLab's internal email renderer. When GitLab processes the inbound email reply under the conditions required to trigger the vulnerability, the template engine evaluates the injected tokens and renders forged content attributed to the GitLab Support Bot identity within the issue thread. A victim user viewing the issue subsequently sees a seemingly authoritative Support Bot message containing attacker-controlled content, which could be used for phishing, credential harvesting, or directing users to malicious links. A publicly available exploit exists on HackerOne (report 3685720), confirming the attack is technically reproducible.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jun 11, 2026

Content injection via Service Desk email template processing in GitLab CE/EE allows an unauthenticated attacker to impersonate the GitLab Support Bot and inject arbitrary content into issue threads. The vulnerability affects all GitLab instances running versions from 15.9 through 19.0.1 with the Service Desk feature active, and stems from improper neutralization of substitution characters (CWE-153) in email template rendering. A publicly available exploit exists on HackerOne, though no active exploitation has been confirmed by CISA KEV; the official CVSS score of 2.6 reflects the high attack complexity and limited integrity-only impact.

RemediationAI

Upgrade to a patched release immediately: GitLab 18.10.8, 18.11.5, or 19.0.2, as documented in the vendor patch advisory at https://about.gitlab.com/releases/2026/06/10/patch-release-gitlab-19-0-2-released/. These are the exact fixed versions confirmed by the GitLab release announcement dated 2026-06-10. If immediate upgrade is not feasible, the primary compensating control is to disable the Service Desk feature on the affected GitLab instance, which removes the inbound email processing pathway that this vulnerability targets; note that disabling Service Desk will prevent all inbound issue creation via email until the upgrade is applied. Restricting who can send email to Service Desk addresses (e.g., allowlisting known sender domains via email routing controls) provides an additional layer of defense but should not substitute for patching, as spoofed sender addresses may still satisfy naive filters.

Affected VersionsENISA

GitLab 15.9 <18.10.8
GitLab 18.11 <18.11.5
GitLab 19.0 <19.0.2

Affected Packages

euvd gitlab fix: 18.10.8, 18.11.5, 19.0.2

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's Service Desk feature accepts inbound emails and processes them as issue comments using an internal email template engine. The vulnerability is rooted in CWE-153 (Improper Neutralization of Substitution Characters), meaning the template processor fails to sanitize or escape substitution tokens within attacker-controlled email reply content before rendering. This allows an adversary to craft an email body containing template substitution sequences that, when processed by GitLab's mailer/template layer, are evaluated rather than treated as literal text, effectively letting the attacker forge content attributed to the privileged GitLab Support Bot identity. The affected product is identified via CPE cpe:2.3:a:gitlab:gitlab:*:*:*:*:*:*:*:* and applies to both Community Edition and Enterprise Edition deployments across a wide version range (15.9 to 19.0.1). The HackerOne report and GitLab work item (ID 601330) corroborate the template-injection root cause.

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 LOW
NVD 4.3 MEDIUM
AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
vuln.today AI 3.1 LOW

AV:N because attack is delivered via email; AC:H per 'certain conditions'; PR:N per description's explicit 'unauthenticated user' language, overriding the conflicting official PR:L; UI:R because victim must view the injected issue content; I:L for content injection only.

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

Primary rating from Vendor (GitLab).

CVSS VectorNVD

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

Lifecycle Timeline

3
Severity Changed
Jun 11, 2026 - 17:37 NVD
LOW MEDIUM
CVSS changed
Jun 11, 2026 - 17:37 NVD
2.6 (LOW) 4.3 (MEDIUM)
Patch available
Jun 11, 2026 - 13:01 EUVD

DescriptionNVD

GitLab has remediated an issue in GitLab CE/EE affecting all versions from 15.9 before 18.10.8, 18.11 before 18.11.5, and 19.0 before 19.0.2 that under certain conditions, could have allowed an unauthenticated user to impersonate the GitLab Support Bot and inject arbitrary content via a specially crafted Service Desk email reply due to improper neutralization in email template processing.

Threat Intelligence Overview

EPSS Score
0.0%
Top 98% exploitable
Exploit
POC
Public exploit code exists
Social Media
2
Sightings
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 MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +22
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.

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-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-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-110264 CRITICAL POC
10.0 Oct 22

Remote code execution in GitLab CE/EE can be triggered by a specially crafted regular expression processed through a vul

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-72867 CRITICAL POC
9.9 Aug 10

Authenticated command injection in Dokploy (self-hostable PaaS) versions 0.29.3 through 0.29.12 lets a low-privileged us

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

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