CVE-2020-28501 Regular Expression Denial of Service (ReDoS)

Medium 5.3 Published Updated

Attackers can cause denial of service by supplying long user agent strings to the es6-crawler-detect library, triggering expensive regex operations.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2020-28501?

CVE-2020-28501 is a medium-severity denial of service vulnerability in es6-crawler-detect, published on 22 Mar 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

This affects the package es6-crawler-detect before 3.1.3. No limitation of user agent string length supplied to regex operators.

Which versions are affected by CVE-2020-28501?

2 open source packages ship an affected version, including es6-crawler-detect. It affects 1 product.

PackageAffectedFixed in
es6-crawler-detect npmAll versions3.1.3
es6-crawler-detect npmAll versions3.1.3

Products include Crawlerdetect Project Crawlerdetect.

How do I fix CVE-2020-28501?

Upgrade es6-crawler-detect to 3.1.3 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-2020-28501 being exploited?

There is no known exploitation of CVE-2020-28501 in the wild and no public exploit code.

Sources

Also known as GHSA-jxg6-fhwc-9v9c.

Is CVE-2020-28501 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free