Quick answers
- Is CVE-2026-54525 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-54525 being exploited in the wild.
- How severe is CVE-2026-54525?
- High severity, with a CVSS score of 8.8, published 14 October 2026.
- Which products and versions are affected?
- Shd101wyy Markdown Preview Enhanced prior to 0.8.28.
- Is there a fix for CVE-2026-54525?
- Yes: fixed in 0.8.28. Until then: Avoid opening untrusted or unfamiliar Markdown files in Visual Studio Code until the extension is updated. Users on non-Windows systems are not affected by this particular vulnerability. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-54525 attacked?
- It is attacked over the network, in a software library.
- Am I affected by CVE-2026-54525?
- Check whether you run Shd101wyy Markdown Preview Enhanced at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- Fixed in: 0.8.28
Avoid opening untrusted or unfamiliar Markdown files in Visual Studio Code until the extension is updated. Users on non-Windows systems are not affected by this particular vulnerability.
Technical details
The vulnerability exists in the preview-link handling code, which uses child_process.exec() with the Windows start command to open external links. The link target is URL-decoded but not sanitized before being passed to the shell, allowing shell metacharacters (such as &) to be interpreted as command separators by cmd.exe. An attacker can craft a Markdown link like [x](mailto:a%26%20calc.exe) that decodes to mailto:a& calc.exe, causing cmd.exe to execute calc.exe as a second command. The fix replaces shell execution with execFile('explorer.exe', [target]) which treats the target as a single unsanitized argument.
Affected products
- shd101wyy Markdown Preview Enhanced prior to 0.8.28
Timeline
- 2026-10-14: disclosed