PT-2024-22359 · Katex+1 · Katex+1
Jupenur
·
Publicado
2024-03-25
·
Atualizado
2025-09-02
·
CVE-2024-28244
CVSS v3.1
6.5
Média
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Nome do software vulnerável e versões afetadas
Versões do KaTeX anteriores à 0.16.10
Descrição
O KaTeX é uma biblioteca JavaScript para renderização matemática TeX na web. Usuários que renderizam expressões matemáticas não confiáveis podem se deparar com entradas maliciosas usando
def ou ewcommand, o que causa um loop quase infinito, apesar de ter definido maxExpand para evitar tais loops. O KaTeX oferece uma opção chamada maxExpand, que visa impedir que macros infinitamente recursivas consumam toda a memória disponível e/ou provoquem um erro de estouro de pilha. Infelizmente, o suporte a caracteres Unicode (sub|super)script permite que um invasor contorne esse limite. Cada grupo de sub/superscript instanciava um analisador (Parser) separado com seu próprio limite de execuções de macro, sem herdar a contagem atual de execuções de macro de seu pai.Recomendações
Atualize para o KaTeX v0.16.10 para remover essa vulnerabilidade.
Como solução alternativa temporária, considere proibir entradas que contenham qualquer um dos caracteres
₊₋₌ ₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ⁺⁻⁼ ⁽⁾⁰¹²³⁴⁵⁶⁷⁸⁹ᵃᵇᶜᵈᵉᵍʰⁱʲᵏˡᵐⁿᵒᵖʳˢᵗᵘʷˣʸᶻᵛᵝᵞᵟᵠᵡ antes de passá-los para o KaTeX.Exploit
Correção
Uncontrolled Recursion
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Debian
Katex