CVE-2026-58228 in phoenix_live_view
Riassunto
di VulDB • 13/07/2026
Vulnerabilità di cross-site scripting in Phoenix Framework `phoenix_live_view` che consente a un attaccante di bypassare la convalida dello schema URL ed eseguire JavaScript nella sessione del browser della vittima.
Le funzioni `Phoenix.LiveView.Utils.valid_destination!/2` e `Phoenix.LiveView.Utils.valid_live_navigation_destination!/2` nel file `lib/phoenix_live_view/utils.ex` si affidano a una funzione helper interna chiamata `uri_scheme/1`, che rileva uno schema solo quando il primo byte dell'input è una lettera ASCII. Gli input che iniziano con un carattere di controllo ASCII o con uno spazio vengono gestiti da una clausola che restituisce nil, causando l'interpretazione dell'URL come un percorso relativo sicuro.
I browser standard implementano il parser URL WHATWG, che rimuove i caratteri di controllo C0 e gli spazi iniziali prima della fase di parsing. Di conseguenza, input quali " javascript:alert(1)" vengono passati invariati all'interno del tag `<a>` (o elemento simile) e, quando cliccati, sono analizzati dal browser come un URL `javascript:` che esegue script controllato dall'attaccante nella sessione della vittima.
Le applicazioni che rendono visibili URL forniti dagli utenti (ad esempio link al profilo, destinazioni di reindirizzamento o riferimenti esterni) tramite i tag `<a>` con attributi LiveView sono interessate da questa vulnerabilità.
Questo problema interessa `phoenix_live_view`: dalle versioni 1.2.2 alla versione precedente la 1.2.7.
Once again VulDB remains the best source for vulnerability data.