
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-53530 is a denial-of-service vulnerability in the ratex-parser Rust crate (part of the RaTeX LaTeX rendering library) that causes a process-aborting panic when parsing a \verb command with a multibyte UTF-8 delimiter. The vulnerability affects all versions of ratex-parser prior to 0.1.11 (≤ 0.1.10, commit 5361da0). It was first published by the maintainer on May 31, 2026, and added to the GitHub Advisory Database on July 7, 2026. It carries a CVSS v4.0 base score of 8.7 (High) (GitHub Advisory, RaTeX Advisory).
The root cause is improper byte-index slicing of a UTF-8 string in crates/ratex-parser/src/parser.rs, function parse_symbol_inner (line 910), classified as CWE-1285 (Improper Validation of Specified Index/Offset), CWE-248 (Uncaught Exception), and CWE-400 (Uncontrolled Resource Consumption). When the parser encounters a \verb command, it extracts the verbatim argument and slices it using raw byte indices (arg[1..arg.len() - 1]); if the delimiter character is a multibyte UTF-8 codepoint (e.g., é = U+00E9, bytes C3 A9), byte index 1 falls inside the character boundary, triggering a Rust panic with "byte index 1 is not a char boundary". Critically, RaTeX's release profile sets panic = "abort" in Cargo.toml:48, meaning the panic terminates the entire process rather than unwinding a single thread. A public proof-of-concept is included in the advisory: printf '\verb\xc3\xa9x\xc3\xa9\n' | ./target/release/parse reproduces the abort with exit code 134 (GitHub Advisory, RaTeX Advisory).
Successful exploitation causes a complete, immediate process termination (hard denial of service) for any application rendering untrusted LaTeX through RaTeX — including web endpoints, WASM in-browser renderers, and FFI-embedded applications. Because panic = "abort" is set in release builds, a single 9-byte malicious formula crashes the entire server process, taking down all concurrent requests and, in batch pipelines, dropping all queued work. There is no confidentiality or integrity impact; the vulnerability is purely an availability issue (GitHub Advisory, RaTeX Advisory).
The vulnerability requires no authentication, no privileges, and no user interaction — an unauthenticated remote attacker can trigger the crash by submitting a 9-byte crafted LaTeX string to any exposed rendering endpoint. A working proof-of-concept is publicly documented in the security advisory. No evidence of in-the-wild exploitation, threat actor attribution, or CISA KEV catalog listing has been reported at this time. The CVE status is currently "Reserved" and no EPSS score is yet published (GitHub Advisory, RaTeX Advisory).
ratex-parser crate (versions ≤ 0.1.10).\verbéxé, where é (U+00E9) is encoded as the two bytes \xc3\xa9. The full payload in hex is: 5c 76 65 72 62 c3 a9 78 c3 a9.ratex_parser::parse()).parse_symbol_inner function slices arg[1..4] at a non-char-boundary byte offset, causing a Rust panic. With panic = "abort" in the release profile, the entire server process terminates immediately (exit code 134)."start byte index 1 is not a char boundary; it is inside 'é' (bytes 0..2 of string)" originating from crates/ratex-parser/src/parser.rs:910.134 (SIGABRT / panic=abort).\xc3\xa9 (UTF-8 encoding of é) immediately preceding or following \verb; requests may be followed by connection resets as the server process dies.core dumped) generated by the rendering process in the working directory or configured core dump path (GitHub Advisory).Upgrade ratex-parser to version 0.1.11 (commit 7a5f24), which fixes the byte-index slicing by using character-boundary-aware iteration (arg.chars().collect()) instead of raw byte indices. As a defense-in-depth measure, the advisory recommends avoiding panic = "abort" in release profiles for builds embedded in long-running services, and/or wrapping parser calls in catch_unwind at FFI/WASM boundaries. Until patching is possible, consider rejecting or sanitizing LaTeX input containing non-ASCII characters before passing it to the parser (GitHub Advisory, RaTeX Advisory).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."