p PatchFirst

CVE-2024-28244

CVE-2024-28244 · KaTeX's maxExpand bypassed by Unicode sub/superscripts

Cette page présente des faits issus de sources publiques. Consultez l’avis original avant toute mise à jour.

KaTeX is a JavaScript library for TeX math rendering on the web. KaTeX users who render untrusted mathematical expressions could encounter malicious input using `\def` or `\newcommand` that causes a near-infinite loop, despite setting `maxExpand` to avoid such loops. KaTeX supports an option named maxExpand which aims to prevent infinitely recursive macros from consuming all available memory and/or triggering a stack overflow error. Unfortunately, support for "Unicode (sub|super)script characters" allows an attacker to bypass this limit. Each sub/superscript group instantiated a separate Parser with its own limit on macro executions, without inheriting the current count of macro executions from its parent. This has been corrected in KaTeX v0.16.10.

CVSS 6.5 · Moyenne · EPSS 2,2% · Correctif disponible

Publication
Mise à jour

Pile logicielle: system · node

Produits et versions concernés

  • katex

    Versions du logiciel
    • >= 0.15.4, < 0.16.10: Concernée

    Aucun correctif publié

  • node-katex Debian:12

    Versions du logiciel
    • 0.16.10+~cs6.1.0-1
    • 0.16.10+~cs6.1.0-2
    • 0.16.10+~cs6.1.0-3
    • 0.16.10+~cs6.1.0-4
    • 0.16.10+~cs6.1.0-5
    • 0.16.10+~cs6.1.0-6
    • 0.16.10+~cs6.1.0-7
    • 0.16.10+~cs6.1.0-8
    • 0.16.10+~cs6.1.0-9
    • 0.16.4+~cs6.1.0-1
    Plages de versions concernées
    • ECOSYSTEM: (−∞, +∞)

    Aucun correctif publié

  • node-katex Debian:13

    Plages de versions concernées
    • ECOSYSTEM: < 0.16.10+~cs6.1.0-1

    Mettez à jour vers 0.16.10+~cs6.1.0-1

  • node-katex Debian:14

    Plages de versions concernées
    • ECOSYSTEM: < 0.16.10+~cs6.1.0-1

    Mettez à jour vers 0.16.10+~cs6.1.0-1

  • katex npm

    Plages de versions concernées
    • SEMVER: ≥ 0.15.4, < 0.16.10

    Mettez à jour vers 0.16.10

Sources originales

Vérifiez votre serveur →