Unknown · Xml-Crypto · CVE-2024-32962
**Nome do software vulnerável e versões afetadas**
xml-crypto, versões 4.0.0 a 5.x
**Descrição**
O problema está relacionado ao fato de que a configuração padrão do xml-crypto não verifica a autorização do signatário, limitando-se a verificar a validade da assinatura. Isso permite que um agente mal-intencionado assine novamente um documento XML, coloque o certificado em um elemento `<KeyInfo />` e passe pelas verificações de validação padrão. Por padrão, a biblioteca confia em qualquer certificado fornecido por meio do elemento `<KeyInfo />` de um documento XML assinado digitalmente. Um invasor pode falsificar a verificação da assinatura modificando o documento XML e substituindo a assinatura existente por uma gerada usando uma chave privada maliciosa. O número estimado de dispositivos potencialmente afetados não é explicitamente declarado, mas a biblioteca é usada por 402 projetos e tem cerca de 1 milhão de downloads semanais.
**Recomendações**
Para as versões 4.x e 5.x, verifique o certificado extraído via `getCertFromKeyInfo` em relação a certificados confiáveis antes de aceitar os resultados da validação.
Para as versões 4.x e 5.x, defina `getCertFromKeyInfo` da `xml-crypto` como `() => undefined` para forçar o uso de um `publicCert` ou `privateKey` explicitamente configurado para a verificação de assinatura.
Atualize para a versão 6.0.0 ou posterior para resolver o problema.