Read the docs

Remote code execution in Obsidian Desktop via MathJax filter bypass

Priority LOW 38CWE-1188Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
Active
Attack complexity
Low
Attack requirements
None
Impact type
Cross-site scripting
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-79.

Summary

Obsidian Desktop before 1.14.0 bundles MathJax 3.2.2 Safe, which contains a filter bypass that lets a crafted formula pass a javascript: link through the configured protocol restrictions (CWE-79). An attacker who gets a victim to open a crafted note and click the rendered link in Live Preview can run operating system commands as the desktop user, because the renderer has Node integration enabled. A public exploit is linked in the references.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

Description from the CNA

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('child_process'), achieving arbitrary operating system command execution as the desktop user.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00168 6th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by the CNA
Fix Fixed Obsidian Desktop (Obsidian): 1.14.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
ObsidianObsidian Desktopbefore 1.14.01.14.0Patch availableCNA
  • Obsidian Desktop VendorObsidian Affected before 1.14.0 Fixed in 1.14.0 Patch available CNA

Remediation

Upgrade Obsidian Desktop to version 1.14.0 or later, which fixes the flaw.

Written with Claude Haiku 5.5 from the sources below · 2026-10-29

  • Fix · CNA Obsidian Desktop (Obsidian) Fixed in 1.14.0

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    Obsidian Desktop 1.14.0

    2 records Highest priority Priority LOW 2 LOW

    Other records, highest priority first

    • TI-2026-69630 Remote code execution in Obsidian Desktop via crafted Markdown notesPriority LOW 38

Timeline

  1. 2026-10-08 Threatist record created from CVE-2026-104078
  2. 2026-10-09 Alias added: GHSA-4pcg-gm3h-3m4r
  3. 2026-10-12 1 new reference · CNA

References

  • TI-2023-11881 An issue discovered in Obsidian Canvas 1.1.9 allows remote attackers to send desktop… CVSS 3.1HIGH 7.5
  • TI-2023-01985 Obsidian Local File Disclosure CVSS 3.1HIGH 8.2
  • TI-2022-16774 Obsidian 0.14.x and 0.15.x before 0.15.5 allows obsidian://hook-get-address remote code… CVSS 3.1CRITICAL 9.8
  • TI-2021-15828 Obsidian before 0.12.12 does not require user confirmation for non-http/https URLs. CVSS 3.1CRITICAL 9.8
  • TI-2023-16416 Obsidian before 1.2.2 allows calls to unintended APIs (for microphone access, camera… CVSS 3.1HIGH 8.2
  • TI-2026-69630 Remote code execution in Obsidian Desktop via crafted Markdown notes CVSS 4.0HIGH 8.5
See all 7 →

Sources