Steffen Deusch

#12514de 56,337
23.4CVSS total
Vulnerabilidades · 4
Baixa
1
Média
1
Alta
2
PT-2026-69436
2.1
2026-08-10
Unknown · Phoenix Live View · CVE-2026-64941
**Nome do Software Vulnerável e Versões Afetadas** phoenix live view versões 0.5.0 até 1.0.18 phoenix live view versões 1.1.0-rc.0 até 1.1.32 phoenix live view versões 1.2.0-rc.0 até 1.2.8 **Description** Um problema de Redirecionamento Aberto (Open Redirect) existe onde um invasor pode redirecionar o navegador de uma vítima para uma origem arbitrária. Isso ocorre porque a função `redirect/2` utiliza `validate local url!/2` para garantir que o destino seja um caminho local, mas falha ao não rejeitar caracteres de tabulação ASCII, LF ou CR. Como os navegadores removem esses caracteres antes de analisar a URL, um valor como `/<TAB>/example.com` ignora a validação e é interpretado como uma URL relativa ao esquema. A função `push patch/2` também é afetada em versões anteriores a 0.7.0. O problema é acionado quando a aplicação passa um valor influenciado externamente como o parâmetro `:to`, como um parâmetro `return to` durante o login ou um destino de navegação de um payload `handle event/3`. **Recommendations** Atualize o phoenix live view para a versão 1.0.19 ou posterior. Atualize o phoenix live view para a versão 1.1.33 ou posterior. Atualize o phoenix live view para a versão 1.2.9 ou posterior. Rejeite qualquer valor não confiável que contenha tabulação ASCII, LF ou CR antes de passá-lo como o parâmetro `:to` para `redirect/2` ou `push patch/2` (para versões anteriores a 0.7.0). Mapeie os destinos de navegação fornecidos pelo cliente para um conjunto fixo de caminhos conhecidos e seguros em vez de encaminhar o valor diretamente.
PT-2026-56202
7.5
2026-07-07
Phoenix · Phoenix · CVE-2026-56812
**Nome do Software Vulnerável e Versões Afetadas** phoenix versões 1.2.0-rc.0 até 1.5.14 phoenix versões 1.6.0-rc.0 até 1.6.16 phoenix versões 1.7.0-rc.0 até 1.7.23 phoenix versões 1.8.0-rc.0 até 1.8.8 **Description** O cliente JavaScript Presence no phoenix contém uma verificação inadequada de condições excepcionais que permite que um invasor com acesso comum ao canal cause uma negação de serviço persistente no lado do cliente para todos os visualizadores de um tópico de canal de presença. O problema reside no arquivo `assets/js/phoenix/presence.js` dentro das rotinas `Presence.syncState()` e `Presence.syncDiff()`. O cliente utiliza um teste de verdade simples (`state[key]`) em vez de uma verificação de propriedade própria para verificar se uma presença existe. Como as chaves de presença são controladas pelo invasor, um usuário pode fornecer uma chave que corresponda a um nome de membro do `Object.prototype` (como ` proto `, `constructor`, `toString` ou `hasOwnProperty`). Isso faz com que a busca retorne o `Object.prototype` integrado em vez de `undefined`, levando o código a tentar ler `.metas.map(...)` do protótipo, o que gera um `TypeError` não capturado. Essa exceção impede que o estado local seja atualizado e evita que o `onSync()` seja disparado. Como o servidor continua a enviar a chave maliciosa, a sincronização permanece interrompida para todos os visualizadores do tópico até que o invasor saia. Trata-se de uma confusão de tempo de leitura do objeto protótipo e não de poluição de protótipo. **Recommendations** Atualize o phoenix para a versão 1.5.15 ou posterior. Atualize o phoenix para a versão 1.6.17 ou posterior. Atualize o phoenix para a versão 1.7.24 ou posterior. Atualize o phoenix para a versão 1.8.9 ou posterior.