{"id":"GHSA-8f25-w7qj-r7hc","summary":"Temporal UI Server cross-site scripting vulnerability","details":"For an attacker with pre-existing access to send a signal to a workflow, the attacker can make the signal name a script that executes when a victim views that signal. The XSS is in the timeline page displaying the workflow execution details of the workflow that was sent the crafted signal.\nAccess to send a signal to a workflow is determined by how you configured the authorizer on your server. This includes any entity with permission to directly call SignalWorkflowExecution or SignalWithStartWorkflowExecution, or any entity can deploy a worker that has access to call workflow progress APIs (specifically RespondWorkflowTaskCompleted).\n","aliases":["CVE-2024-2435","GO-2024-2675"],"modified":"2026-07-17T21:15:05.294346084Z","published":"2024-04-02T18:31:16Z","database_specific":{"nvd_published_at":"2024-04-02T17:15:46Z","cwe_ids":["CWE-79"],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2024-04-02T18:53:36Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-2435"},{"type":"PACKAGE","url":"https://github.com/temporalio/ui-server"},{"type":"WEB","url":"https://github.com/temporalio/ui-server/releases/tag/v2.25.0"}],"affected":[{"package":{"name":"github.com/temporalio/ui-server/v2","ecosystem":"Go","purl":"pkg:golang/github.com/temporalio/ui-server/v2"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.25.0"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/04/GHSA-8f25-w7qj-r7hc/GHSA-8f25-w7qj-r7hc.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:L"}]}