CVE-2021-43843 – jsx-slack
Package
Manager: npm
Name: jsx-slack
Vulnerable Version: >=0 <4.5.2
Severity
Level: Medium
CVSS v3.1: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS v4.0: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
EPSS: 0.00563 pctl0.67404
Details
jsx-slack insufficient patch for CVE-2021-43838 ReDoS We found the patch for CVE-2021-43838 in jsx-slack v4.5.1 is insufficient to save from Regular Expression Denial of Service (ReDoS) attack. This vulnerability affects to jsx-slack v4.5.1 and earlier versions. ### Impact If attacker can put a lot of JSX elements into `<blockquote>` tag _with including multibyte characters_, an internal regular expression for escaping characters may consume an excessive amount of computing resources. ```javascript /** @jsxImportSource jsx-slack */ import { Section } from 'jsx-slack' console.log( <Section> <blockquote> {[...Array(40)].map(() => ( <p>亜</p> ))} </blockquote> </Section> ) ``` v4.5.1 has released by passing the test against ASCII characters but missed the case of multibyte characters. https://github.com/yhatt/jsx-slack/security/advisories/GHSA-55xv-f85c-248q ### Patches jsx-slack v4.5.2 has updated regular expressions for escaping blockquote characters to prevent catastrophic backtracking. It is also including an updated test case to confirm rendering multiple tags in `<blockquote>` with multibyte characters. ### References - https://github.com/yhatt/jsx-slack/commit/46bc88391d89d5fda4ce689e18ca080bcdd29ecc ### Credits Thanks to @hieki for finding out this vulnerability.
Metadata
Created: 2022-01-06T18:34:18Z
Modified: 2022-08-11T18:43:28Z
Source: https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/01/GHSA-hp68-xhvj-x6j6/GHSA-hp68-xhvj-x6j6.json
CWE IDs: ["CWE-400"]
Alternative ID: GHSA-hp68-xhvj-x6j6
Finding: F067
Auto approve: 1