Skip to main content
← All vulnerabilities
CVE-2026-53530GHSA-4HGP-59H5-GVRJ

ratex-parser panics on `\verb` with a multibyte delimiter (UTF-8 byte-boundary slice)

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.1.11
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

RaTeX is a KaTeX-compatible math rendering engine written in Rust. Prior to version 0.1.11, the public parser entrypoint `ratex_parser::parse(&str)` panics on the 9-byte input `\verbéxé` (i.e. `\verb` followed by the non-ASCII delimiter `é`). When handling a `\verb` command, the parser slices the verbatim argument with byte indices (`arg[1..arg.len() - 1]`); if the delimiter character is multibyte UTF-8, index `1` lands inside that character and Rust panics with “byte index 1 is not a char boundary”. Because RaTeX’s release profile sets `panic = "abort"` (`Cargo.toml:48`), the panic aborts the entire process — not just the current request/thread — making this a hard denial of service for any service that renders untrusted LaTeX. Version 0.1.11 fixes the issue.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • erweixin RaTeX

    fixed in 0.1.11

  • ratex-parsercrates.io

    fixed in 0.1.11

References 1

GitHub · erweixin/RaTeX