This repository has been archived by the owner on Sep 25, 2021. It is now read-only.
Update dependency highlight.js to v10.1.2 [SECURITY] #639
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
10.0.2
->10.1.2
GitHub Vulnerability Alerts
CVE-2020-26237
Impact
Affected versions of this package 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.
Patches
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.
Workarounds
Patch your library
Manually patch your library to create null objects for both
languages
andaliases
:Filter out bad data from end users
Filter the language names that users are allowed to inject into your HTML to guarantee they are valid.
References
For more information
If you have any questions or comments about this advisory:
Release Notes
highlightjs/highlight.js
v10.1.2
Compare Source
Fixes:
getLanguage
(#2636) nightv10.1.1
Compare Source
Fixes:
index.d.ts is not a module
error (#2603) Josh Goebelv10.1.0
Compare Source
New themes:
Parser Engine:
keywords.$pattern
key to grammar definitions (#2519) Josh GoebelregisterAliases
method (#2540) [Taufik Nurrohman][]on:begin
callback for modes (#2261) Josh Goebelon:end
callback for modes (#2261) Josh GoebelEND_SAME_AS_BEGIN
mode to replaceendSameAsBegin
parser attribute (#2261) Josh GoebelfixMarkup
would rarely destroy markup whenuseBR
was enabled (#2532) Josh GoebelDeprecations:
htmlbars
grammar is now deprecated. Usehandlebars
instead. (#2344) Nils KnappmeierhighlightBlock
result.re
deprecated. Useresult.relevance
instead. (#2552) Josh Goebelresult.second_best.re
=>result.second_best.relevance
(#2552)lexemes
is now deprecated in favor ofkeywords.$pattern
key (#2519) Josh GoebelendSameAsBegin
is now deprecated. (#2261) Josh GoebelLanguage Improvements:
readonly
keyword (#2562) Martin (Lhoerion)OPTIMIZE:
andHACK:
to the labels highlighted inside comments Josh Goebelpair
,make_pair
,priority_queue
as built-ins (#2538) Hankun Linpriority_queue
pair
as cpp containers (#2541) Hankun Linset
keyword conflicting with setTimeout, etc. (#2514) Vania Kucher=>
function with nested()
in params now works (#2502) Josh Goebel=>
function with nested()
in params now works (#2502) Josh Goebel@objcMembers
was being partially highlighted (#2543) Nick Randalllate
andrequired
keywords, theNever
built-in type, and nullable built-in types (#2550) Sam Rawlinsv10.0.3
Compare Source
Renovate configuration
📅 Schedule: "" (UTC).
🚦 Automerge: Enabled.
♻️ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.