temporalio/sqlparser can panic when Parse, ParseStrictDDL, or ParseNext processes a MySQL version...
🔗 CVE IDs covered (1)
📋 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.
🔗 References (9)
- https://nvd.nist.gov/vuln/detail/CVE-2026-16651
- https://github.com/temporalio/sqlparser/pull/5
- https://github.com/temporalio/temporal/pull/11090
- https://github.com/temporalio/temporal/pull/11190
- https://github.com/temporalio/sqlparser/commit/74181ffcbaaf0c52faa925f4cf27ed6c0c2be86f
- https://github.com/temporalio/sqlparser/tree/v0.1.0
- https://github.com/temporalio/temporal/releases/tag/v1.30.7
- https://github.com/temporalio/temporal/releases/tag/v1.31.3
- https://github.com/advisories/GHSA-g9jq-gq4v-4rw3