PT-2026-68626 · Hexapdf · Html Sanitize Ex
CVSS v4.0
8.2
Alta
| Vetor | AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
html sanitize ex versões 0.3.1 até 1.5.2
Descrição
Um invasor remoto não autenticado pode causar o esgotamento da CPU do servidor ao fornecer uma declaração CSS longa em HTML sanitizado. O problema reside na função
HtmlSanitizeEx.Scrubber.CSS.scrub/1, onde uma expressão regular usada para corresponder a nomes de propriedades utiliza um [-w]+ guloso e ilimitado seguido de dois pontos obrigatórios. Quando uma sequência longa de caracteres de palavra não é seguida por dois pontos, o mecanismo executa um trabalho quadrático em relação ao comprimento da sequência. Isso pode saturar o pool do agendador BEAM, tornando a aplicação inoperante. Este problema afeta especificamente HtmlSanitizeEx.html5/1, scrubbers personalizados que utilizam HtmlSanitizeEx, extend: :html5 e chamadas diretas para HtmlSanitizeEx.Scrubber.CSS.scrub/1 através de atributos de estilo ou corpos de elementos <style>.Recomendações
Atualize o html sanitize ex para a versão 1.5.3 ou posterior.
Como solução temporária, sanitize a entrada usando
basic html/1, markdown html/1 ou strip tags/1 para evitar o scrubber de CSS.
Defina um scrubber personalizado que proíba tanto atributos de estilo quanto elementos <style>.
Implemente um limite rigoroso de tamanho para o HTML fornecido pelo usuário antes que ele chegue ao sanitizador para limitar o custo de processamento.Exploit
Correção
DoS
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Html Sanitize Ex