PT-2026-137920
CVE-2026-66295
·
Publicado
2026-11-06
·
Atualizado
2026-11-06
Descrição por
CVSS 4.0
2.1
BaixaMétricasAV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Nome do Software Vulnerável e Versões Afetadas
saxy versões 0.7.0 até 1.6.x
Description
O codificador XML não valida nem escapa o alvo e o conteúdo de instruções de processamento, escrevendo-os literalmente no documento de saída. Como a sequência
?> encerra uma instrução de processamento, um invasor pode usar essa sequência para fechar a construção prematuramente e injetar elementos arbitrários, atributos e outras instruções de processamento no documento serializado. Isso ocorre porque o codificador concatena campos sem verificá-los em relação às restrições da especificação XML. A função Saxy.XML.processing instruction/2 é um construtor público que permite a herança dessa falha. Isso pode levar à injeção de XML, resultando em registros forjados, folhas de estilo injetadas ou conteúdo ativo quando a saída é processada por um analisador downstream ou navegador. O problema é acionado quando um nó {:processing instruction, name, content} é passado para Saxy.encode!/2 ou Saxy.encode to iodata!/2 usando entradas não confiáveis.Recommendations
Atualize o saxy para a versão 1.7.0 ou posterior.
Como solução temporária, evite colocar dados não confiáveis em instruções de processamento.
Valide valores dinâmicos antes de construir o nó, rejeitando qualquer conteúdo que contenha
?> e qualquer alvo que não corresponda à produção Name do XML ou que seja igual a xml (independente de maiúsculas/minúsculas).
Transporte valores dinâmicos no conteúdo do elemento ou em atributos em vez de instruções de processamento.Explorabilidade
Correção
Pesquisadores
Fornecedores
Produtos afetados
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾