CVE-2021-43843 Insufficient patch for Regular Expression Denial of Service (ReDoS) to jsx-slack v4.5.1
An attacker can cause excessive resource consumption via multibyte characters in blockquotes, leading to denial of service in the jsx-slack library.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-43843?
CVE-2021-43843 is a medium-severity denial of service vulnerability in yhatt jsx-slack, published on 20 Dec 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
jsx-slack is a package for building JSON objects for Slack block kit surfaces from JSX. The maintainers found the patch for CVE-2021-43838 in jsx-slack v4.5.1 is insufficient tfor protection from a Regular Expression Denial of Service (ReDoS) attack. If an 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. v4.5.1 passes the test against ASCII characters but misses the case of multibyte characters. 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.
Which versions are affected by CVE-2021-43843?
2 open source packages ship an affected version, including jsx-slack. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
jsx-slack npm | All versions | 4.5.2 |
jsx-slack npm | All versions | 4.5.2 |
Products include Jsx-Slack Project Jsx-Slack.
How do I fix CVE-2021-43843?
Upgrade jsx-slack to 4.5.2 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2021-43843 being exploited?
There is no known exploitation of CVE-2021-43843 in the wild and no public exploit code.
Other vulnerabilities in yhatt jsx-slack
Sources
Also known as GHSA-hp68-xhvj-x6j6.