Description
The frontend gRPC server's streaming interceptor chain did not include the authorization interceptor. When a ClaimMapper and Authorizer are configured, unary RPCs enforce authentication and authorization, but the streaming AdminService/StreamWorkflowReplicationMessages endpoint accepted requests without credentials. This endpoint is registered on the same port as WorkflowService and cannot be disabled independently. An attacker with network access to the frontend port could open the replication stream without authentication. Data exfiltration is possible, but  only when a configured replication target is correctly configured and the attacker has knowledge of the cluster configuration, as the history service validates cluster IDs and peer membership before returning replication data.




The fix was applied per release line: it is present in 1.28.4, 1.29.6, 1.30.4, 1.31.2, and 1.32.0 and later releases on each line. Releases 1.31.0 and 1.31.1 do not contain the fix and are affected.




Temporal Cloud is not affected.
Published: 2026-04-10
Score: 6.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The frontend gRPC server's streaming interceptor chain did not include the authorization interceptor. When a ClaimMapper and Authorizer are configured, unary RPCs enforce authentication and authorization, but the streaming AdminService/StreamWorkflowReplicationMessages endpoint accepted requests without credentials. This endpoint is registered on the same port as WorkflowService and cannot be disabled independently. An attacker with network access to the frontend port could open the replication stream without authentication. Data exfiltration is possible, but only when a configured replication target is correctly configured and the attacker has knowledge of the cluster configuration, as the history service validates cluster IDs and peer membership before returning replication data.

Affected Systems

Executables from Temporal Technologies, Inc. marked as temporal are impacted. Any deployment of Temporal that includes a replication target and uses the default streaming replication endpoint is vulnerable until an update is applied. The patch versions listed in the advisory – specifically v1.28.4, v1.29.6, v1.30.4, v1.31.2, and any release 1.32.0 or newer – have addressed the issue, but releases 1.31.0 and 1.31.1 remain affected.

Risk and Exploitability

Vulnerability involves an unauthorized replication stream endpoint that bypasses authentication. The CVSS score of 6.3 indicates moderate severity. EPSS indicates a very low exploitation probability, and the vulnerability is not listed in the CISA KEV catalog, suggesting it is not actively exploited at scale. Based on the description, the likely attack vector is a malicious actor who can reach the Temporal frontend gRPC port, which is often exposed to internal or compromised networks. Exploitation also mandates knowledge of the replication target; therefore, risk is higher in environments where replication is enabled and not properly isolated. Temporal Cloud deployments are not affected.

Generated by OpenCVE AI on July 22, 2026 at 16:43 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Temporal to a patched release (v1.28.4 or later) that includes the missing authentication fix
  • Restrict network access to the Temporal frontend gRPC port to limit attacker reach
  • Ensure replication targets are only configured for trusted clusters and that cluster IDs and peer membership checks are correctly enforced
  • Enable monitoring for unexpected replication stream activity and audit replication logs for unauthorized data transfers

Generated by OpenCVE AI on July 22, 2026 at 16:43 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-q98v-9f9w-f49q Temporal does not enforce authentication and authorization for the streaming AdminService/StreamWorkflowReplicationMessages endpoint
History

Wed, 08 Jul 2026 19:45:00 +0000

Type Values Removed Values Added
Description The frontend gRPC server's streaming interceptor chain did not include the authorization interceptor. When a ClaimMapper and Authorizer are configured, unary RPCs enforce authentication and authorization, but the streaming AdminService/StreamWorkflowReplicationMessages endpoint accepted requests without credentials. This endpoint is registered on the same port as WorkflowService and cannot be disabled independently. An attacker with network access to the frontend port could open the replication stream without authentication. Data exfiltration is possible, but  only when a configured replication target is correctly configured and the attacker has knowledge of the cluster configuration, as the history service validates cluster IDs and peer membership before returning replication data. Temporal Cloud is not affected. The frontend gRPC server's streaming interceptor chain did not include the authorization interceptor. When a ClaimMapper and Authorizer are configured, unary RPCs enforce authentication and authorization, but the streaming AdminService/StreamWorkflowReplicationMessages endpoint accepted requests without credentials. This endpoint is registered on the same port as WorkflowService and cannot be disabled independently. An attacker with network access to the frontend port could open the replication stream without authentication. Data exfiltration is possible, but  only when a configured replication target is correctly configured and the attacker has knowledge of the cluster configuration, as the history service validates cluster IDs and peer membership before returning replication data. The fix was applied per release line: it is present in 1.28.4, 1.29.6, 1.30.4, 1.31.2, and 1.32.0 and later releases on each line. Releases 1.31.0 and 1.31.1 do not contain the fix and are affected. Temporal Cloud is not affected.
References

Mon, 13 Apr 2026 17:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Mon, 13 Apr 2026 13:00:00 +0000

Type Values Removed Values Added
First Time appeared Temporal
Temporal temporal
Vendors & Products Temporal
Temporal temporal

Fri, 10 Apr 2026 21:15:00 +0000

Type Values Removed Values Added
Description The frontend gRPC server's streaming interceptor chain did not include the authorization interceptor. When a ClaimMapper and Authorizer are configured, unary RPCs enforce authentication and authorization, but the streaming AdminService/StreamWorkflowReplicationMessages endpoint accepted requests without credentials. This endpoint is registered on the same port as WorkflowService and cannot be disabled independently. An attacker with network access to the frontend port could open the replication stream without authentication. Data exfiltration is possible, but  only when a configured replication target is correctly configured and the attacker has knowledge of the cluster configuration, as the history service validates cluster IDs and peer membership before returning replication data. Temporal Cloud is not affected.
Title Missing Authentication on Streaming gRPC Replication Endpoint
Weaknesses CWE-306
References
Metrics cvssV4_0

{'score': 6.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:L/SC:L/SI:N/SA:N/S:N/AU:N/R:U/RE:L'}


Subscriptions

Temporal Temporal
cve-icon MITRE

Status: PUBLISHED

Assigner: Temporal

Published:

Updated: 2026-07-08T19:20:28.034Z

Reserved: 2026-04-06T21:59:05.129Z

Link: CVE-2026-5724

cve-icon Vulnrichment

Updated: 2026-04-13T16:10:42.117Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-04-10T21:16:28.497

Modified: 2026-06-17T10:59:33.733

Link: CVE-2026-5724

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-22T16:45:02Z

Weaknesses
  • CWE-306

    Missing Authentication for Critical Function