GHSA-4hgp-59h5-gvrj: ratex-parser panics on `\verb` with a multibyte delimiter (UTF-8 byte-boundary slice)
The ratex-parser crate has a vulnerability where its public parser entrypoint panics when processing a \verb command with a multibyte UTF-8 delimiter. This occurs because the parser slices the verbatim argument using byte indices rather than character boundaries, causing a panic when the slice starts inside a multibyte character. The panic aborts the entire process due to the crate's release profile setting panic = "abort", resulting in a denial of service for any service rendering untrusted LaTeX input.
AI Analysis
Technical Summary
The ratex-parser crate's parse function panics on input such as `\verbéxé` where the delimiter `é` is a multibyte UTF-8 character. The parser incorrectly slices the argument string by byte indices (e.g., `arg[1..arg.len()-1]`), which can start slicing inside a multibyte character, causing a Rust panic with "byte index 1 is not a char boundary." Because the crate is built with `panic = "abort"`, this panic terminates the entire process, causing a hard denial of service. The lexer correctly handles multibyte delimiters, but the parser does not. The vulnerability affects versions of ratex-parser prior to 0.1.11. The recommended fix is to slice by character boundaries instead of byte indices and reconsider the use of `panic = "abort"` in long-running services.
Potential Impact
Any application using ratex-parser to render untrusted LaTeX input can be crashed by a specially crafted string containing a \verb command with a multibyte UTF-8 delimiter. The panic aborts the entire process, causing a denial of service that can take down servers or batch pipelines processing LaTeX. This vulnerability does not require privileges or user interaction beyond supplying the crafted input and can disrupt availability of services relying on this parser.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The direct remediation is to fix the parser to slice strings by character boundaries rather than byte indices when handling \verb commands with multibyte delimiters. Additionally, consider avoiding `panic = "abort"` in release builds for long-running services and use `catch_unwind` to isolate panics. Until a patch is available, avoid processing untrusted LaTeX input with vulnerable versions of ratex-parser.
GHSA-4hgp-59h5-gvrj: ratex-parser panics on `\verb` with a multibyte delimiter (UTF-8 byte-boundary slice)
Description
The ratex-parser crate has a vulnerability where its public parser entrypoint panics when processing a \verb command with a multibyte UTF-8 delimiter. This occurs because the parser slices the verbatim argument using byte indices rather than character boundaries, causing a panic when the slice starts inside a multibyte character. The panic aborts the entire process due to the crate's release profile setting panic = "abort", resulting in a denial of service for any service rendering untrusted LaTeX input.
CVSS v4.0
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The ratex-parser crate's parse function panics on input such as `\verbéxé` where the delimiter `é` is a multibyte UTF-8 character. The parser incorrectly slices the argument string by byte indices (e.g., `arg[1..arg.len()-1]`), which can start slicing inside a multibyte character, causing a Rust panic with "byte index 1 is not a char boundary." Because the crate is built with `panic = "abort"`, this panic terminates the entire process, causing a hard denial of service. The lexer correctly handles multibyte delimiters, but the parser does not. The vulnerability affects versions of ratex-parser prior to 0.1.11. The recommended fix is to slice by character boundaries instead of byte indices and reconsider the use of `panic = "abort"` in long-running services.
Potential Impact
Any application using ratex-parser to render untrusted LaTeX input can be crashed by a specially crafted string containing a \verb command with a multibyte UTF-8 delimiter. The panic aborts the entire process, causing a denial of service that can take down servers or batch pipelines processing LaTeX. This vulnerability does not require privileges or user interaction beyond supplying the crafted input and can disrupt availability of services relying on this parser.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The direct remediation is to fix the parser to slice strings by character boundaries rather than byte indices when handling \verb commands with multibyte delimiters. Additionally, consider avoiding `panic = "abort"` in release builds for long-running services and use `catch_unwind` to isolate panics. Until a patch is available, avoid processing untrusted LaTeX input with vulnerable versions of ratex-parser.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-4hgp-59h5-gvrj
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-53530"]
- Ecosystems
- ["crates.io"]
- Database Specific Severity
- HIGH
- Cvss Version
- 4.0
Threat ID: 6a4e4ee9c9d9e3dbe3289c7a
Added to database: 07/08/2026, 13:21:45 UTC
Last enriched: 07/08/2026, 13:41:21 UTC
Last updated: 07/09/2026, 03:33:26 UTC
Views: 5
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.