CVE-2026-104078: Obsidian Desktop < 1.14.0 RCE via MathJax Safe Filter Bypass

Published Oct 8, 2026
·
Updated

Obsidian Desktop before 1.14.0 contains a filter bypass vulnerability in the bundled MathJax 3.2.2 Safe component that allows attackers to execute arbitrary code by embedding a crafted \href value with a TAB byte in the URL scheme, causing filterURL to produce an empty protocol that bypasses the configured safeProtocols restrictions. Attackers can craft a note containing a malicious MathJax formula that renders as a javascript: URL anchor, which when clicked by the victim in Live Preview executes in the Node-integration-enabled vault renderer via require('childprocess'), achieving arbitrary operating system command execution as the desktop user.

Affected Software

1 affected component
Obsidian Obsidian Desktop<1.14.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Obsidian Desktop to a version that resolves this vulnerability.

    Fixed in 1.14.0

Event History

Oct 8, 2026
CVE Published
via MITRE·04:38 PM
Data Sourced
via MITRE·04:38 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·05:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

What user interaction is required for exploitation?

An attacker must provide a note containing a crafted MathJax formula. The victim must render it in Live Preview and click the resulting malicious link.

2

What level of access does an attacker need?

The attacker does not need prior privileges on the victim's system. They need a way to get the victim to open a crafted note and click the rendered anchor.

3

What is the impact after successful exploitation?

The malicious link executes in the Node-integration-enabled vault renderer and can invoke require('child_process'). This allows arbitrary operating system command execution as the desktop user.

4

Which versions are affected?

Obsidian Desktop versions before 1.14.0 are affected, according to the vulnerability information.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203