Description
marked is an application that is meant to parse and compile markdown. Due to the way that marked 0.3.5 and earlier parses input, specifically HTML entities, it's possible to bypass marked's content injection protection (`sanitize: true`) to inject a `javascript:` URL. This flaw exists because `&#xNNanything;` gets parsed to what it could and leaves the rest behind, resulting in just `anything;` being left.
Metrics
CVSS 3.0 6.1/10
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:NWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| HackerOne | marked node module | <=0.3.5 |
References
- https://github.com/chjj/marked/pull/592Exploit, Issue Tracking, Third Party Advisory
- https://github.com/chjj/marked/pull/592/commits/2cff85979be8e7a026a9aca35542c470cf5da523Patch, Third Party Advisory
- https://nodesecurity.io/advisories/101Third Party Advisory
- https://github.com/chjj/marked/pull/592Exploit, Issue Tracking, Third Party Advisory
- https://github.com/chjj/marked/pull/592/commits/2cff85979be8e7a026a9aca35542c470cf5da523Patch, Third Party Advisory
- https://nodesecurity.io/advisories/101Third Party Advisory
Timeline
- Published
- May 31, 2018
- Last modified
- Jun 17, 2026
- NVD status
- Modified