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-27223 Vulnerability in maven package org.eclipse.jetty:jetty-server
CVE-2020-21176 Vulnerability in npm package thinkjs
CVE-2018-12022 Vulnerability in maven package com.fasterxml.jackson.core:jackson-databind
CVE-2022-3171 Vulnerability in maven package com.google.protobuf:protobuf-javalite
CVE-2022-24759 Vulnerability in npm package @chainsafe/libp2p-noise