Description
Prism is a syntax highlighting library. Some languages before 1.24.0 are vulnerable to Regular Expression Denial of Service (ReDoS). When Prism is used to highlight untrusted (user-given) text, an attacker can craft a string that will take a very very long time to highlight. This problem has been fixed in Prism v1.24. As a workaround, do not use ASCIIDoc or ERB to highlight untrusted text. Other languages are not affected and can be used to highlight untrusted text.
Remediation
References
https://github.com/PrismJS/prism/pull/2688
https://github.com/PrismJS/prism/pull/2774
https://github.com/PrismJS/prism/security/advisories/GHSA-gj77-59wh-66hg
https://www.oracle.com/security-alerts/cpujan2022.html
Related Vulnerabilities
CVE-2020-7793 Vulnerability in maven package org.webjars.bowergithub.faisalman:ua-parser-js
CVE-2022-41340 Vulnerability in npm package @lionello/secp256k1-js
CVE-2020-36048 Vulnerability in maven package org.webjars.bower:engine.io
CVE-2018-12536 Vulnerability in maven package org.eclipse.jetty:jetty-util
CVE-2023-24187 Vulnerability in maven package com.bstek.ureport:ureport2-core