CVE-2026-16651
HighCVSS 8.7Exploitation Probability (EPSS)
Low risk33th percentile - higher than 33% of all known CVEs
Summary
The temporalio/sqlparser library 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, causing a Go runtime panic that terminates the process.
Risk Assessment
An authenticated caller with namespace read permission can submit a malformed query through the ListWorkers API and terminate the Matching process, causing a denial of service. Repeated requests can sustain the attack.
Recommendation
Update temporalio/sqlparser and Temporal Server to a version containing the MySQL comment validation fix. Consider disabling the ListWorkers API if it is not required.
Other vulnerabilities in temporalio/sqlparser
Original NVD description (English source)
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.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

