PT-2026-44135 · Symfony · Sanitize-Html

CVE-2026-45066

·

Publicado

2026-05-21

·

Atualizado

2026-07-14

CVSS v3.1

6.1

Média

VetorAV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Nome do Software Vulnerável e Versões Afetadas symfony/html-sanitizer versões anteriores a 5.4
Description Três falhas de bypass permitem que autores de conteúdo enviem URLs que não estão na lista de permissões (allowlist) através das verificações de sanitização. O primeiro bypass ocorre porque UrlSanitizer::parse() segue a RFC-3986, enquanto os navegadores seguem o Padrão de URL WHATWG, que normaliza barras invertidas (``) para barras normais (/) antes de analisar a autoridade de esquemas especiais. Isso permite que uma entrada como https://evil@trusted.com/ seja analisada como trusted.com no servidor, mas navegue para https://evil/ no navegador. O segundo bypass envolve o padrão WHATWG, que colapsa qualquer sequência de barras (/) após o esquema em //, enquanto a RFC-3986 não o faz; consequentemente, entradas como https:/evil.com/ ou https:///evil.com/ são analisadas como sem host, ignorando a lista de permissões de host, mas resolvem para evil.com no navegador. O terceiro bypass existe no UrlAttributeSanitizer, que aplica a política de links apenas a elementos <a>. Como os elementos <area> também são hiperlinks navegáveis, eles eram incorretamente sanitizados com a política de mídia, ignorando completamente allowLinkHosts() e allowLinkSchemes().
Recommendations Atualize para a versão 5.4 ou posterior.

Exploit

Correção

Incomplete List of Disallowed Inputs

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-45066
GHSA-QC95-4862-92FH

Produtos afetados

Sanitize-Html