CVE-2022-31147 jquery-validation ReDoS in url2 due to incomplete fix of CVE-2021-43306

High 7.5 Published Updated

An attacker can cause a denial of service in applications using the jQuery Validation Plugin by supplying malicious input to the url2 method.

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

What is CVE-2022-31147?

CVE-2022-31147 is a high-severity denial of service vulnerability in jquery-validation, published on 14 Jul 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The jQuery Validation Plugin (jquery-validation) provides drop-in validation for forms. Versions of jquery-validation prior to 1.19.5 are vulnerable to regular expression denial of service (ReDoS) when an attacker is able to supply arbitrary input to the url2 method. This is due to an incomplete fix for CVE-2021-43306. Users should upgrade to version 1.19.5 to receive a patch.

Weakness: CWE-1333

Which versions are affected by CVE-2022-31147?

2 open source packages ship an affected version, including jquery-validation. It affects 1 product.

PackageAffectedFixed in
jquery-validation npmAll versions1.19.5
jquery-validation npmAll versions1.19.5

Products include Jqueryvalidation Jquery Validation.

How do I fix CVE-2022-31147?

Upgrade jquery-validation to 1.19.5 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-2022-31147 being exploited?

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

Public exploit code: 1 proofs of concept on GitHub.

Sources

Also known as GHSA-ffmh-x56j-9rc3, UBUNTU-CVE-2022-31147.

Is CVE-2022-31147 in your software?

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

Check your SBOMs for free