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.
Metrics
CVSS 3.1 6.5/10
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| PrismJS | prism | < 1.24 |
References
- https://github.com/PrismJS/prism/pull/2688Patch, Third Party Advisory
- https://github.com/PrismJS/prism/pull/2774Patch, Third Party Advisory
- https://github.com/PrismJS/prism/security/advisories/GHSA-gj77-59wh-66hgThird Party Advisory
- https://www.oracle.com/security-alerts/cpujan2022.htmlPatch, Third Party Advisory
- https://github.com/PrismJS/prism/pull/2688Patch, Third Party Advisory
- https://github.com/PrismJS/prism/pull/2774Patch, Third Party Advisory
- https://github.com/PrismJS/prism/security/advisories/GHSA-gj77-59wh-66hgThird Party Advisory
- https://www.oracle.com/security-alerts/cpujan2022.htmlPatch, Third Party Advisory
Timeline
- Published
- Jun 28, 2021
- Last modified
- Jun 17, 2026
- NVD status
- Modified