Lucene search

K
osvGoogleOSV:GHSA-55XV-F85C-248Q
HistoryDec 17, 2021 - 7:59 p.m.

Regular Expression Denial of Service (ReDoS) in jsx-slack

2021-12-1719:59:02
Google
osv.dev
11

0.002 Low

EPSS

Percentile

61.1%

jsx-slack v4.5.1 and earlier versions are vulnerable to a regular expression denial-of-service (ReDoS) attack.

Impact

If attacker can put a lot of JSX elements into <blockquote> tag, an internal regular expression for escaping characters may consume an excessive amount of computing resources.

/** @jsxImportSource jsx-slack */
import { Section } from 'jsx-slack'

console.log(
  <section>
    <blockquote>
      {[...Array(40)].map((_, i) =&gt; (
        <p>{i + 1}</p>
      ))}
    </blockquote>
  </section>
)

Patches

_See also: https://github.com/yhatt/jsx-slack/security/advisories/GHSA-hp68-xhvj-x6j6_

jsx-slack v4.5.2 has updated regular expressions to prevent catastrophic backtracking.

jsx-slack v4.5.1 also had patched a workaround. It has no problems to contents with ASCII characters, but still vulnerable to contents with multibyte characters. (https://github.com/yhatt/jsx-slack/commit/36e4a10405e4c7745333e245fcc5029c02c7065d)

References

Credits

Thanks to @hieki for finding out this vulnerability.

CPENameOperatorVersion
jsx-slacklt4.5.1

0.002 Low

EPSS

Percentile

61.1%

Related for OSV:GHSA-55XV-F85C-248Q