{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2026-65654", "assignerOrgId": "61241ed8-fa44-4f23-92db-b8c443751968", "state": "PUBLISHED", "assignerShortName": "Temporal", "dateReserved": "2026-07-22T18:08:48.925Z", "datePublished": "2026-09-21T11:38:23.307Z", "dateUpdated": "2026-09-21T15:26:44.632Z" }, "containers": { "cna": { "providerMetadata": { "orgId": "61241ed8-fa44-4f23-92db-b8c443751968", "shortName": "Temporal", "dateUpdated": "2026-09-21T11:38:23.307Z" }, "title": "temporalio/ringpop-go fails to enforce configured label limits on inbound membership gossip", "problemTypes": [ { "descriptions": [ { "lang": "en", "cweId": "CWE-770", "description": "CWE-770: Allocation of Resources Without Limits or Throttling", "type": "CWE" } ] } ], "impacts": [ { "descriptions": [ { "lang": "en", "value": "Denial of service through persistent memory and gossip-bandwidth consumption. No confidentiality or integrity impact was identified." } ] } ], "affected": [ { "vendor": "Temporal Technologies, Inc.", "product": "temporalio/ringpop-go", "collectionURL": "https://pkg.go.dev", "packageName": "github.com/temporalio/ringpop-go", "repo": "https://github.com/temporalio/ringpop-go", "modules": [ "Labels", "SWIM membership" ], "programFiles": [ "swim/labels.go", "swim/member.go", "swim/memberlist.go" ], "versions": [ { "status": "affected", "version": "0.0.0-20160824133849-d0de5fe13330", "lessThan": "0.0.0-20260724173031-c317effcdc8b", "versionType": "semver" } ], "defaultStatus": "unaffected" } ], "descriptions": [ { "lang": "en", "value": "github.com/temporalio/ringpop-go enforces configured LabelOptions limits when an application changes the local node's labels, but affected versions do not apply those limits to label maps received in SWIM membership changes. A network peer that can reach a live Ringpop TChannel listener can repeatedly submit changes for distinct member addresses containing label keys, values, or counts that exceed the receiver's configured limits. Accepted labels are retained in the member list and disseminated to peers, allowing memory and gossip-bandwidth consumption to exceed configured bounds and potentially making the hosting process unavailable. The fix validates peer-supplied label maps before they are retained or disseminated. Availability only; no confidentiality or integrity impact was identified.", "supportingMedia": [ { "type": "text/html", "base64": false, "value": "

github.com/temporalio/ringpop-go enforces configured LabelOptions limits when an application changes the local node's labels, but affected versions do not apply those limits to label maps received in SWIM membership changes. A network peer that can reach a live Ringpop TChannel listener can repeatedly submit changes for distinct member addresses containing label keys, values, or counts that exceed the receiver's configured limits. Accepted labels are retained in the member list and disseminated to peers, allowing memory and gossip-bandwidth consumption to exceed configured bounds and potentially making the hosting process unavailable. The fix validates peer-supplied label maps before they are retained or disseminated. Availability only; no confidentiality or integrity impact was identified.

" } ] } ], "references": [ { "url": "https://github.com/temporalio/ringpop-go/commit/d0de5fe1333074d5c41a88e9053592e39f495bb2", "name": "First affected source revision", "tags": [ "product" ] }, { "url": "https://github.com/temporalio/ringpop-go/blob/b97329e994f792f70427a7533a3e7a98976eb262/swim/labels.go#L11-L61", "name": "Configured label limits and their resource-control purpose", "tags": [ "product" ] }, { "url": "https://github.com/temporalio/ringpop-go/blob/b97329e994f792f70427a7533a3e7a98976eb262/swim/memberlist.go#L521-L612", "name": "Vulnerable inbound membership-update path", "tags": [ "product" ] }, { "url": "https://github.com/temporalio/ringpop-go/pull/22", "name": "Inbound label-validation fix", "tags": [ "patch" ] }, { "url": "https://github.com/temporalio/ringpop-go/commit/c317effcdc8bc09ed1c11f00994782bda9685d4b", "name": "First fixed default-branch revision", "tags": [ "patch" ] }, { "url": "https://github.com/temporalio/ringpop-go/tree/v0.1.0", "name": "Fixed release tag v0.1.0", "tags": [ "product" ] } ], "metrics": [ { "format": "CVSS", "scenarios": [ { "lang": "en", "value": "temporalio/ringpop-go reasonable worst-case network service embedding" } ], "cvssV4_0": { "attackVector": "NETWORK", "attackComplexity": "LOW", "attackRequirements": "NONE", "privilegesRequired": "NONE", "userInteraction": "NONE", "vulnConfidentialityImpact": "NONE", "subConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE", "subIntegrityImpact": "NONE", "vulnAvailabilityImpact": "HIGH", "subAvailabilityImpact": "NONE", "exploitMaturity": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED", "version": "4.0", "baseSeverity": "HIGH", "baseScore": 8.7, "vectorString": "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" } } ], "configurations": [ { "lang": "en", "value": "The CVSS Base score reflects an application that exposes a Ringpop membership listener to untrusted network peers without authenticated transport. Ringpop does not authenticate peers at the application layer. An embedding application can restrict the listener to trusted cluster members or require verified client certificates before TChannel receives a request. Deployments using those controls should apply appropriate Environmental metrics.", "supportingMedia": [ { "type": "text/html", "base64": false, "value": "

The CVSS Base score reflects an application that exposes a Ringpop membership listener to untrusted network peers without authenticated transport. Ringpop does not authenticate peers at the application layer. An embedding application can restrict the listener to trusted cluster members or require verified client certificates before TChannel receives a request. Deployments using those controls should apply appropriate Environmental metrics.

" } ] } ], "workarounds": [ { "lang": "en", "value": "Restrict the Ringpop membership listener to trusted cluster members. Where supported by the embedding application, require mutual TLS with verified client certificates. These controls prevent untrusted clients from reaching the vulnerable receive path but do not correct the missing validation for an authenticated or compromised peer.", "supportingMedia": [ { "type": "text/html", "base64": false, "value": "

Restrict the Ringpop membership listener to trusted cluster members. Where supported by the embedding application, require mutual TLS with verified client certificates. These controls prevent untrusted clients from reaching the vulnerable receive path but do not correct the missing validation for an authenticated or compromised peer.

" } ] } ], "solutions": [ { "lang": "en", "value": "Upgrade github.com/temporalio/ringpop-go to v0.1.0 or later. The fix validates peer-supplied label maps against the configured LabelOptions before labels are retained or disseminated. Invalid incoming labels are discarded while the remaining membership change can still be processed.", "supportingMedia": [ { "type": "text/html", "base64": false, "value": "

Upgrade github.com/temporalio/ringpop-go to v0.1.0 or later. The fix validates peer-supplied label maps against the configured LabelOptions before labels are retained or disseminated. Invalid incoming labels are discarded while the remaining membership change can still be processed.

" } ] } ], "credits": [ { "lang": "en", "value": "An external security researcher who reported this issue responsibly to Temporal Technologies", "type": "finder" } ], "source": { "discovery": "EXTERNAL" } }, "adp": [ { "metrics": [ { "other": { "type": "ssvc", "content": { "timestamp": "2026-09-21T15:26:15.984122Z", "id": "CVE-2026-65654", "options": [ { "Exploitation": "none" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "version": "2.0.3" } } } ], "title": "CISA ADP Vulnrichment", "providerMetadata": { "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP", "dateUpdated": "2026-09-21T15:26:44.632Z" } } ] } }