---
id: CVE-2026-104252
title: Vitess is a database clustering system for horizontal scaling of MySQL
summary: >-
  Vitess is a database clustering system for horizontal scaling of MySQL. Prior
  to 23.0.5 and 24.0.2, twopczHandler in go/vt/vttablet/tabletserver/twopcz.go
  writes the Action and dtid form values from the vttablet and vtcombo /twopcz
  HTTP …
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-79
published: '2026-10-13'
updated: '2026-10-13'
sourceUpdated: '2026-10-13T20:17:12.453'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-104252'
references:
  - url: >-
      https://github.com/vitessio/vitess/commit/3140c1846cd120db34f33b2083139b4ab638aed2
    label: security-advisories@github.com
  - url: >-
      https://github.com/vitessio/vitess/commit/976e1e0d78f9d29d02e5e31b4aa7e180648f08af
    label: security-advisories@github.com
  - url: >-
      https://github.com/vitessio/vitess/commit/c1ed96302e658190168c971afdac730cf70e43f7
    label: security-advisories@github.com
  - url: 'https://github.com/vitessio/vitess/pull/20255'
    label: security-advisories@github.com
  - url: 'https://github.com/vitessio/vitess/pull/20273'
    label: security-advisories@github.com
  - url: 'https://github.com/vitessio/vitess/pull/20274'
    label: security-advisories@github.com
  - url: 'https://github.com/vitessio/vitess/releases/tag/v23.0.5'
    label: security-advisories@github.com
  - url: 'https://github.com/vitessio/vitess/releases/tag/v24.0.2'
    label: security-advisories@github.com
  - url: 'https://github.com/vitessio/vitess/security/advisories/GHSA-v75v-6fpf-gvw8'
    label: security-advisories@github.com
tags:
  - nvd
ingestedAt: '2026-10-13T20:53:44.627Z'
---

## Overview

Vitess is a database clustering system for horizontal scaling of MySQL. Prior to 23.0.5 and 24.0.2, twopczHandler in go/vt/vttablet/tabletserver/twopcz.go writes the Action and dtid form values from the vttablet and vtcombo /twopcz HTTP debug endpoint into a text/html response without HTML escaping. Under the default allow-all ACL policy, a remote unauthenticated attacker can send an operator a crafted request that executes script in the operator's browser after the request is opened. The script runs with the vttablet debug origin and can read same-origin diagnostic endpoints that expose query, transaction, environment, variable, or profiling data available in that deployment. This issue is fixed in versions 23.0.5 and 24.0.2.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
