CVE-2026-96770
s2s-proxy accepts untrusted client certificates
Temporal Technologies, Inc. s2s-proxy
CVSS
9.3CriticalExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.25%Chance of exploitation activity in the next 30 days, higher than 16% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed inNone listedNo source names a fixed version. Check the vendor advisory below
What fixes it
No source in this snapshot names a fixed version. The vendor advisories under References are the place to check.
Description
All published s2s-proxy versions through 0.2.2 are affected. In versions 0.1.16 through 0.2.2, TLS server listeners use Go's RequireAnyClientCert mode when skipCAVerification is false. This mode checks that the client holds the certificate's private key but does not verify the certificate against the configured CA. An attacker can therefore use a self-signed certificate and key to establish a TLS and yamux connection, then invoke RPCs allowed by the proxy's configuration and Temporal credentials. No certificate or private key trusted by the deployment, and no Temporal credential, is required.
Text from CVE List
Affected versions 1
- s2s-proxyaffected: 0.0.1-alpha through 0.2.2CVE List
References 5
- github.com/temporalio/s2s-proxy/commit/d100c2258dbc37d7df51298ea045315f36c7eb3bFixvia CVE List
- github.com/temporalio/s2s-proxy/pull/296Fixvia CVE List
- github.com/temporalio/s2s-proxy/commit/f1dc6b9a3919d37e82545ab461cbe6bb62618d3cFixvia CVE List
- github.com/temporalio/s2s-proxy/blob/v0.2.2/encryption/tls.go#L47-L62Referencevia CVE List
- docs.temporal.io/production-deployment/data-encryption#codec-server-setupReferencevia CVE List