CVE-2024-28246

KaTeX is missing normalization of the protocol in URLs allows bypassing forbidden protocols

Published Mar 25, 2024 CVSS 3.1 · 5.5 Medium EPSS < 1% KEV · Not listed
Description
KaTeX is a JavaScript library for TeX math rendering on the web. Code that uses KaTeX's `trust` option, specifically that provides a function to blacklist certain URL protocols, can be fooled by URLs in malicious inputs that use uppercase characters in the protocol. In particular, this can allow for malicious input to generate `javascript:` links in the output, even if the `trust` function tries to forbid this protocol via `trust: (context) => context.protocol !== 'javascript'`. Upgrade to KaTeX v0.16.10 to remove this vulnerability.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
EUVD EUVD EUVD-2024-0807 KaTeX is a JavaScript library for TeX math rendering on the web. Code that uses KaTeX's `trust` option, specifically that provides a function to blacklist certain URL protocols, can be fooled by URLs in malicious inputs that use uppercase characters in the protocol. In particular, this can allow for malicious input to generate `javascript:` links in the output, even if the `trust` function tries to forbid this protocol via `trust: (context) => context.protocol !== 'javascript'`. Upgrade to KaTeX v0.16.10 to remove this vulnerability.
Github GHSA Github GHSA GHSA-3wc5-fcw2-2329 KaTeX missing normalization of the protocol in URLs allows bypassing forbidden protocols
Ubuntu USN Ubuntu USN USN-7572-1 KaTeX vulnerabilities
History
Type Values Removed Values Added
CPEs cpe:2.3:a:katex:katex:*:*:*:*:*:*:*:*
Type Values Removed Values Added
Metrics epss

{'score': 0.00051}

epss

{'score': 0.00043}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Aug 2, 2024, 12:48 AM
Reserved
Mar 7, 2024, 2:33 PM
Status
Analyzed
Published
Mar 25, 2024, 8:15 PM
Modified
Jun 17, 2026, 7:21 AM