CVE-2026-5724

Missing Authentication on Streaming gRPC Replication Endpoint

Published Apr 10, 2026 CVSS 4.0 · 6.3 Medium EPSS < 1% KEV · Not listed
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.

Analysis

AI-generated

Technical impact

The frontend gRPC server’s streaming interceptor chain omitted the authorization interceptor. When ClaimMapper and Authorizer are configured, unary RPCs enforce authentication and authorization, but the streaming AdminService/StreamWorkflowReplicationMessages endpoint accepts requests without credentials. The 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 only when a replication target is correctly configured and the attacker knows 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. 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.

Remediation

No solution or workaround provided in the CVE record.

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 August 2, 2026 at 02:23 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
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
Type Values Removed Values Added
Metrics ssvc

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

Type Values Removed Values Added
First Time appeared Temporal
Temporal temporal
Vendors & Products Temporal
Temporal temporal
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'}

Weaknesses
  • CWE-306

    Missing Authentication for Critical Function

Sources

Status
PUBLISHED
Assigner
Temporal
Published
Updated
Jul 8, 2026, 7:20 PM
Reserved
Apr 6, 2026, 9:59 PM
Status
Awaiting Analysis
Published
Apr 10, 2026, 9:16 PM
Modified
Jul 8, 2026, 8:17 PM