p PatchFirst

CVE-2024-28244

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

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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 · Medium · EPSS 2.2% · Fix available

Published
Updated

Stack: system · node

Affected products and versions

  • katex

    Versions
    • >= 0.15.4, < 0.16.10: Affected

    No fix published

  • node-katex Debian:12

    Versions
    • 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
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-katex Debian:13

    Affected ranges
    • ECOSYSTEM: < 0.16.10+~cs6.1.0-1

    Update to 0.16.10+~cs6.1.0-1

  • node-katex Debian:14

    Affected ranges
    • ECOSYSTEM: < 0.16.10+~cs6.1.0-1

    Update to 0.16.10+~cs6.1.0-1

  • katex npm

    Affected ranges
    • SEMVER: ≥ 0.15.4, < 0.16.10

    Update to 0.16.10

Original sources

Check your server →