CVE-2025-12983
GitLab vulnerability analysis and mitigation

Overview

CVE-2025-12983 is a Denial of Service (DoS) vulnerability in GitLab CE/EE's markdown rendering engine, caused by improper handling of specially crafted markdown content with nested formatting patterns. It affects all GitLab CE/EE versions from 16.9 before 18.3.6, 18.4 before 18.4.4, and 18.5 before 18.5.2. The vulnerability was disclosed on November 12, 2025, as part of GitLab's scheduled patch release, and was reported via HackerOne by researcher 'phli'. The NVD assigns a CVSS v3.1 base score of 6.5 (Medium), while GitLab's own advisory rates it as Low with a score of 3.1 (GitLab Advisory, Red Hat CVE).

Technical details

The root cause is classified as CWE-789 (Memory Allocation with Excessive Size Value), where the markdown parser allocates excessive memory when processing deeply nested formatting patterns, leading to resource exhaustion. An authenticated attacker with low privileges can exploit this remotely by submitting crafted markdown content — for example, to issue comments, merge request descriptions, or wiki pages — without requiring user interaction. The vulnerability's attack complexity is rated High in GitLab's own CVSS vector, suggesting that triggering the condition reliably may require specific nesting structures. No public proof-of-concept code has been identified at this time (GitLab Advisory, Red Hat CVE).

Impact

Successful exploitation allows an authenticated attacker to cause a denial of service condition on the affected GitLab instance, impacting availability. There is no confidentiality or integrity impact — the vulnerability is limited to availability (HIGH per NVD's scoring). On self-managed GitLab instances, repeated exploitation could degrade or crash the markdown rendering service, disrupting CI/CD pipelines, code reviews, and collaboration workflows for all users (GitLab Advisory).

Exploitability

No public exploit code or active in-the-wild exploitation has been reported for CVE-2025-12983. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.016% (0.000160), indicating a very low probability of exploitation in the near term. Exploitation requires authentication with at least low-level privileges, which further limits the attack surface (Red Hat CVE).

Exploitation steps

  1. Authenticate: Log in to a vulnerable GitLab CE/EE instance (versions 16.9–18.5.1) with any valid user account (low privileges sufficient).
  2. Identify a markdown-rendering endpoint: Navigate to a location that renders markdown, such as an issue comment, merge request description, wiki page, or snippet.
  3. Craft malicious markdown: Construct markdown content with deeply nested formatting patterns (e.g., heavily nested bold, italic, blockquote, or list combinations) designed to trigger excessive memory allocation in the parser.
  4. Submit the payload: Post or save the crafted markdown content to the target endpoint.
  5. Trigger DoS: The GitLab markdown rendering engine processes the nested patterns, causing excessive memory allocation and potentially crashing or severely degrading the service for all users on the instance (GitLab Advisory).

Indicators of compromise

  • Logs: Sudden spikes in memory usage or out-of-memory errors in GitLab application logs (production.log) coinciding with markdown rendering requests; repeated errors from the markdown processing component.
  • Network: Unusual volume of POST requests to markdown-rendering endpoints (e.g., /issues, /merge_requests, /wikis) from a single authenticated user.
  • Process: GitLab Puma or Unicorn worker processes consuming abnormally high memory or crashing; repeated worker restarts logged in system logs (/var/log/gitlab/).
  • Application: GitLab availability alerts or 503 errors following submission of content to markdown-enabled fields by a specific user account.

Mitigation and workarounds

GitLab has released patched versions on November 12, 2025: 18.5.2, 18.4.4, and 18.3.6 for both CE and EE editions. All self-managed GitLab installations running affected versions (16.9 through 18.5.1) should upgrade immediately. GitLab.com and GitLab Dedicated customers are already protected. No configuration-based workaround has been published; upgrading to a fixed version is the only recommended remediation (GitLab Advisory).

Community reactions

The vulnerability was part of a broader GitLab patch release on November 12, 2025, which also addressed higher-severity issues such as a stored XSS in the Kubernetes proxy (CVE-2025-11224, CVSS 7.7) and prompt injection vulnerabilities in GitLab Duo. Security news outlets including GBHackers, CyberPress, and eSecurity Planet covered the broader patch release, focusing primarily on the prompt injection and XSS issues rather than CVE-2025-12983 specifically, given its lower severity rating (GBHackers, eSecurity Planet).

Additional resources


SourceThis report was generated using AI

Related GitLab vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-16553MEDIUM5.4
  • GitLab logoGitLab
  • cpe:2.3:a:gitlab:gitlab:*:*:*:*:enterprise:*:*:*
NoYesJul 29, 2026
CVE-2026-6336MEDIUM5.3
  • GitLab logoGitLab
  • gitlab-rails-ce-fips-18.1
NoYesJul 29, 2026
CVE-2026-6267MEDIUM5.3
  • GitLab logoGitLab
  • gitlab-rails-ce-fips-18.6
NoYesJul 29, 2026
CVE-2026-3093MEDIUM4.7
  • GitLab logoGitLab
  • gitlab-cng-18.11
NoYesJul 29, 2026
CVE-2026-4672MEDIUM4.3
  • GitLab logoGitLab
  • gitlab-workhorse-ce-18.7
NoYesJul 29, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management