Impact
Temporal Server incorrectly determines whether a Workflow completion callback is internal based on a caller-supplied HTTP header. An authenticated user with only write permissions in a single namespace can attach a callback whose URL host matches the internal callback allowlist. Because the callback source header is non‑empty, the History service rewrites the request to target the local frontend, preserving the caller’s path, query, and body. When that internal frontend’s HTTP API is enabled, the rewritten call is authorized as a system administrator, allowing the attacker to perform state‑changing operations such as terminating workflows or modifying namespace configurations in any namespace where the attacker has no rights. This flaw maps to CWE‑807, reflecting an improper trust of input data.
Affected Systems
Temporal Technologies, Inc. provides Temporal Server. Every release from 1.30.0 onward, including 1.30.7, 1.31.3, and 1.32.0, is affected when callback.inspectSourceHeader is set to true. Versions 1.25.0 through 1.29.7 also suffer a narrower variant that requires the source header to match a cluster‑ID UUID; despite the reduced attack surface, the same administrative consequences are possible. The issue is present only when an internal frontend is deployed with a non‑zero HTTP port and the component.callbacks.allowedAddresses allow at least one external callback host.
Risk and Exploitability
The vulnerability has a CVSS score of 7.2, indicating high severity. EPSS is not available, and the flaw is not listed in the CISA KEV catalog, implying no confirmed exploitation in the wild yet. The attack vector requires the attacker to be an authenticated client with write permissions in a namespace and for the cluster to expose an internal frontend HTTP API. With those conditions met, an attacker can cause the server to perform internal admin requests without network access to the internal frontend, making the exploit practical in misconfigured clusters. Administrators should therefore treat this as a high‑risk flaw and remediate promptly.
OpenCVE Enrichment