CVE-2026-54525 json
Markdown Preview Enhanced: One Click RCE via Markdown Link Command Injection on Windows
published 2026-10-14 25 d ago modified 2026-10-16 24 d ago also EUVD-2026-101581
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 37%
- public exploits
- 0
- none known
Summary
Markdown Preview Enhanced is a Markdown preview extension for Visual Studio Code. Prior to 0.8.28, Markdown Preview Enhanced preview-link handling passes a decoded, Markdown-controlled link target to a Windows file-opening helper that invokes child_process.exec with the start command. When a Windows user opens an untrusted Markdown file and clicks a crafted external or unsupported-scheme link, shell metacharacters in the decoded target are interpreted by cmd.exe as command separators, allowing an attacker-selected command to run with the privileges of the current VS Code user. The attack requires one normal preview-link click but does not require malicious workspace configuration, script execution to be enabled, or additional files. This issue is fixed in version 0.8.28.
Patch / fix
- markdown_preview_enhanced_project markdown_preview_enhanced 0.8.28
- github.com/shd101wyy/crossnote@5588ca2 commit
- github.com/shd101wyy/vscode-markdown-preview-enhanced@dcd8028 commit
- github.com/shd101wyy/crossnote#442 pull request
- github.com/shd101wyy/vscode-markdown-preview-enhanced#2318 pull request
- github.com/shd101wyy/crossnote/releases/tag/0.9.29 release
- github.com/shd101wyy/vscode-markdown-preview-enhanced/releases/tag/0.… release
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 25 d ago
Exploit prediction
0.43% chance of exploitation in the next 30 days, higher than 37% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
Affected products
- shd101wyy vscode-markdown-preview-enhanced
Classification
- Weakness
-
- CWE-78 Improper Neutralization of Special Elements used in an OS Command
References
- github.com /shd101wyy/crossnote/pull/442
- github.com /shd101wyy/vscode-markdown-preview-enhanced/pull/2318
- github.com /shd101wyy/crossnote/commit/5588ca2121c3da43fe331575dc5cf4ef347b91ee
- github.com /shd101wyy/vscode-markdown-preview-enhanced/commit/dcd80281c986293b93d9f1af34ced64dcb230c77
- github.com /shd101wyy/vscode-markdown-preview-enhanced/security/advisories/GHSA-7v6f-3vq6-r373
- github.com /shd101wyy/crossnote/releases/tag/0.9.29
- github.com /shd101wyy/vscode-markdown-preview-enhanced/releases/tag/0.8.28
Sources
- CVE List CVE-2026-54525
- NVD CVE-2026-54525
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.