Description
github.com/temporalio/tchannel-go did not validate the one-byte checksum-type field in inbound TChannel call frames. A network peer that can reach a listener can complete the standard initialization handshake and send a call request with an unsupported checksum type. The parser uses that value as an index into a four-entry checksum pool, causing an unrecovered Go panic on the connection read goroutine and terminating the hosting process. This allows remote denial of service against applications that expose the listener to untrusted peers. The impact is limited to availability; no confidentiality or integrity impact was identified.
Published: 2026-09-21
Score: 8.7 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Analysis and contextual insights are available on OpenCVE Cloud.

Remediation

Vendor Solution

Upgrade github.com/temporalio/tchannel-go to v1.22.1 or later. The fix rejects unsupported checksum types during direct and relay frame parsing and prevents out-of-range checksum-pool access.


Vendor Workaround

Restrict TChannel listener access to trusted peers. Where supported by the embedding application, require mutually authenticated TLS so peers without a trusted client certificate are rejected before TChannel frame parsing. External panic-recovery middleware is not a reliable mitigation because the panic occurs on a library-created connection goroutine.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 21 Sep 2026 19:45:00 +0000

Type Values Removed Values Added
First Time appeared Temporal
Temporal tchannel-go
Vendors & Products Temporal
Temporal tchannel-go

Mon, 21 Sep 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 21 Sep 2026 11:45:00 +0000

Type Values Removed Values Added
Description github.com/temporalio/tchannel-go did not validate the one-byte checksum-type field in inbound TChannel call frames. A network peer that can reach a listener can complete the standard initialization handshake and send a call request with an unsupported checksum type. The parser uses that value as an index into a four-entry checksum pool, causing an unrecovered Go panic on the connection read goroutine and terminating the hosting process. This allows remote denial of service against applications that expose the listener to untrusted peers. The impact is limited to availability; no confidentiality or integrity impact was identified.
Title temporalio/tchannel-go malformed checksum type causes process termination
Weaknesses CWE-129
References
Metrics cvssV4_0

{'score': 8.7, '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'}


Subscriptions

Temporal Tchannel-go
cve-icon MITRE

Status: PUBLISHED

Assigner: Temporal

Published:

Updated: 2026-09-21T15:30:00.325Z

Reserved: 2026-07-22T18:08:48.925Z

Link: CVE-2026-65652

cve-icon Vulnrichment

Updated: 2026-09-21T15:29:45.571Z

cve-icon NVD

Status : Received

Published: 2026-09-21T12:17:15.800

Modified: 2026-09-21T16:17:11.140

Link: CVE-2026-65652

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-21T19:24:06Z

Weaknesses
  • CWE-129

    Improper Validation of Array Index