GitHub Advisoryadvisory · Go
GHSA-p2gr-hm8g-q772 Temporal has a namespace policy bypass allowing requests to be authorized for incorrect contexts
LOW
Official page ↗
- Aliases
- CVE-2025-14986
- Ecosystem
- Go
- Packages
- go.temporal.io/server
- Severity
- Low
- CVSS vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:U
- Weaknesses
- CWE-863
- Reviewed
- 2025-12-31
Affected packages
• Go go.temporal.io/server: >= 1.24.0, < 1.27.4 → fixed in 1.27.4
• Go go.temporal.io/server: >= 1.28.0, < 1.28.2 → fixed in 1.28.2
• Go go.temporal.io/server: >= 1.29.0, < 1.29.2 → fixed in 1.29.2
Description
When frontend.enableExecuteMultiOperation is enabled, the server can apply namespace-scoped validation and feature gates for the embedded StartWorkflowExecutionRequest using its Namespace field rather than the outer, authorized ExecuteMultiOperationRequest.Namespace. This allows a caller authorized for one namespace to bypass that namespace's limits/policies by setting the embedded start request's namespace to a different namespace. The workflow is still created in the outer (authorized) namespace; only validation/gating is performed under the wrong namespace context.
This issue affects Temporal: from 1.24.0 through 1.29.1. Fixed in 1.27.4, 1.28.2, 1.29.2.
Related
Alias · CVE (1)
- CVE-2025-14986 When frontend.enableExecuteMultiOperation is enabled, the server can apply namespace-scoped validation and feature gates for the embedded… vulnerability
Weakness · CWE (1)
- CWE-863 Incorrect Authorization weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2025-14986 advisory
- https://github.com/temporalio/temporal/pull/8839 web
- https://github.com/temporalio/temporal package
- https://github.com/temporalio/temporal/releases/tag/v1.27.4 web
- https://github.com/temporalio/temporal/releases/tag/v1.28.2 web
- https://github.com/temporalio/temporal/releases/tag/v1.29.2 web