Vulnerability · Published Nov 24, 2020 · Assigned by GitHub_M

CVE-2020-26237Prototype Pollution in highlight.js

Medium 5.8

In plain English

A medium-severity security flaw in highlight.js from highlightjs. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 1.3% (higher than 71% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)5.8Medium
Exploit odds (30 days)1.3%top 28.8% of all CVEs
Exploited in the wildNo reportsnot in CISA KEV
Attack toolingNoneno public tooling known

Official description

Highlight.js is a syntax highlighter written in JavaScript. Highlight.js versions before 9.18.2 and 10.1.2 are vulnerable to Prototype Pollution. A malicious HTML code block can be crafted that will result in prototype pollution of the base object's prototype during highlighting. If you allow users to insert custom HTML code blocks into your page/app via parsing Markdown code blocks (or similar) and do not filter the language names the user can provide you may be vulnerable. The pollution should just be harmless data but this can cause problems for applications not expecting these properties to exist and can result in strange behavior or application crashes, i.e. a potential DOS vector. If your website or application does not render user provided data it should be unaffected. Versions 9.18.2 and 10.1.2 and newer include fixes for this vulnerability. If you are using version 7 or 8 you are encouraged to upgrade to a newer release.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12highlight.js9.18.1+dfsg1-3DEBIAN-CVE-2020-26237
Debian:13highlight.js9.18.1+dfsg1-3DEBIAN-CVE-2020-26237
Debian:14highlight.js9.18.1+dfsg1-3DEBIAN-CVE-2020-26237
npmhighlight.js9.18.2GHSA-vfrc-7r7c-w9mx
npmhighlight.js10.1.2GHSA-vfrc-7r7c-w9mx

Affected products (as reported)

VendorProductVersions
highlightjs highlight.js < 9.18.2>= 10.0.0, < 10.1.2

Weakness: CWE-471 · Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:H/A:N

References