CVE-2026-54566
HighCVSS 8.5Summary
Markdown Preview Enhanced, a Markdown preview extension for Visual Studio Code, prior to 0.8.29 evaluates repository-controlled .crossnote/config.js and .crossnote/parser.js files with vm.runInNewContext, which does not provide a security boundary from the Node.js host realm. Opening a Markdown file in a malicious repository automatically loads these files, and prototype-chain traversal can reach the host Function constructor and process object, allowing OS command execution as the victim account without further interaction.
Risk Assessment
An attacker could achieve arbitrary OS command execution with the victim's privileges simply by having them open a Markdown file from a malicious repository, leading to full workstation compromise.
Recommendation
Update Markdown Preview Enhanced to version 0.8.29 or later and do not open Markdown files from untrusted repositories.
Other vulnerabilities in Markdown Preview Enhanced
See all- CVE-2026-54702High
Markdown Preview Enhanced, a Markdown preview extension for Visual Studio Code, prior to 0.8.30 does not validate the command value or arguments sent from the webview. JavaScript running in the preview can invoke privileged extension commands, including file modification, code execution, export-tool execution, and arbitrary URL opening. Exploitation requires a separate webview JavaScript execution path, such as the .crossnote/head.html injection.
- CVE-2026-54525High
Markdown Preview Enhanced, a Markdown preview extension for Visual Studio Code, prior to 0.8.28 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 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.
- CVE-2026-11422High
Markdown Preview Enhanced 0.8.x with crossnote engine 0.9.28 has a code injection vulnerability in the WaveDrom rendering pipeline. Attackers can embed malicious content in a wavedrom fenced code block, leading to arbitrary JavaScript execution in the VS Code webview context and arbitrary file writes on the local filesystem.
Original NVD description (English source)
Markdown Preview Enhanced is a Markdown preview extension for Visual Studio Code. Prior to 0.8.29, Markdown Preview Enhanced evaluates repository-controlled .crossnote/config.js and .crossnote/parser.js files with vm.runInNewContext, which does not provide a security boundary from the Node.js host realm. Opening a Markdown file in a malicious repository automatically loads these files, and prototype-chain traversal can reach the host Function constructor and process object, allowing operating-system commands to execute as the victim account without further interaction. Both configuration evaluation and parser-hook evaluation are affected, and the attack does not depend on module-scoped require being available. This issue is fixed in version 0.8.29.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

