CVE-2016-10531 json
Sanitization bypass using HTML Entities in marked
published 8y ago modified 4mo ago also GHSA-vfvf-mqq8-rwqc , EUVD-2019-0347
- cvss
- 6.1
- version 3.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.4%
- EPSS 1.4% chance of exploitation in 30 days, percentile 72%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- npm marked 0.3.6
- node-marked Debian 14, Debian 13, Debian 12 0.3.6+dfsg-1
debian advisories DEBIAN-CVE-2016-10531
- github.com/chjj/marked#592 commit
Is CVE-2016-10531 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerExploit prediction
1.41% chance of exploitation in the next 30 days, higher than 72% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/chjj/marked/pull/592 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.0 | 6.1 | CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
| NVD | 2.0 | 4.3 | AV:N/AC:M/Au:N/C:N/I:P/A:N |
| GitHub | 3.0 | 6.1 | CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | marked | <0.3.6 |
0.3.6 |
Affected products
- HackerOne marked node module
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/chjj/marked/pull/592/commits/2cff85979be8e7a026a9aca35542c470cf5da523
web, patch, third-party-advisory
-
github.com
/chjj/marked/pull/592
web, exploit, issue-tracking, third-party-advisory
-
nodesecurity.io
/advisories/101
third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2016-10531
advisory
-
github.com
/advisories/GHSA-vfvf-mqq8-rwqc
advisory
-
npmjs.com
/advisories/101
web
Sources
- CVE List CVE-2016-10531
- GitHub Advisory GHSA-vfvf-mqq8-rwqc
- NVD CVE-2016-10531
Fencer Intel 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.