Description
Markdown Preview Enhanced before 0.8.28 parses Bitfield fenced code blocks with interpretJS(), which evaluates the block content as code via vm.runInNewContext(), allowing arbitrary code execution. A crafted markdown document containing a malicious bitfield code block executes attacker-controlled code on the server side when the document is rendered or exported. Fixed in 0.8.28 by parsing bitfield register definitions with JSON5.parse(), since they are purely data.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| shd101wyy | Markdown Preview Enhanced | < 0.8.28 | 0.8.28 |
References
- Markdown Preview Enhanced 0.8.28 Release Notes release-notes
- VulnCheck Advisory: Markdown Preview Enhanced Arbitrary Code Execution via Bitfield interpretJS() third-party-advisory