Description
Prism is a syntax highlighting library. Starting with version 1.14.0 and prior to version 1.27.0, Prism's command line plugin can be used by attackers to achieve a cross-site scripting attack. The command line plugin did not properly escape its output, leading to the input text being inserted into the DOM as HTML code. Server-side usage of Prism is not impacted. Websites that do not use the Command Line plugin are also not impacted. This bug has been fixed in v1.27.0. As a workaround, do not use the command line plugin on untrusted inputs, or sanitize all code blocks (remove all HTML code text) from all code blocks that use the command line plugin.
Remediation
References
https://github.com/PrismJS/prism/commit/e002e78c343154e1c0ddf9d6a0bb85689e1a5c7c
https://github.com/PrismJS/prism/pull/3341
https://github.com/PrismJS/prism/security/advisories/GHSA-3949-f494-cm99
Related Vulnerabilities
CVE-2023-27602 Vulnerability in maven package org.apache.linkis:linkis-storage-script-dev-server
CVE-2014-0230 Vulnerability in maven package org.apache.tomcat.embed:tomcat-embed-core
CVE-2011-4343 Vulnerability in maven package org.apache.myfaces.core:myfaces-impl
CVE-2022-34916 Vulnerability in maven package org.apache.flume.flume-ng-sources:flume-jms-source
CVE-2021-43841 Vulnerability in maven package org.xwiki.platform:xwiki-platform-oldcore