CVE-2021-31404 Timing side channel vulnerability in UIDL request handler in Vaadin 10, 11-14, and 15-18

Medium 4.0 Published Updated

Attackers can bypass CSRF protection by guessing security tokens via timing side-channel attacks in the UIDL request handler.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2021-31404?

CVE-2021-31404 is a medium-severity vulnerability in Vaadin, published on 23 Apr 2021. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

Non-constant-time comparison of CSRF tokens in UIDL request handler in com.vaadin:flow-server versions 1.0.0 through 1.0.13 (Vaadin 10.0.0 through 10.0.16), 1.1.0 prior to 2.0.0 (Vaadin 11 prior to 14), 2.0.0 through 2.4.6 (Vaadin 14.0.0 through 14.4.6), 3.0.0 prior to 5.0.0 (Vaadin 15 prior to 18), and 5.0.0 through 5.0.2 (Vaadin 18.0.0 through 18.0.5) allows attacker to guess a security token via timing attack.

Weakness: CWE-203, CWE-208

Which versions are affected by CVE-2021-31404?

6 open source packages ship an affected version, including com.vaadin:flow-server. It affects 2 products.

PackageAffectedFixed in
com.vaadin:flow-server MavenFrom 1.0.01.0.14
com.vaadin:flow-server MavenFrom 1.0.01.0.14
com.vaadin:flow-server MavenFrom 1.1.02.4.7
com.vaadin:flow-server MavenFrom 1.1.02.4.7
com.vaadin:flow-server MavenFrom 3.0.05.0.3
com.vaadin:flow-server MavenFrom 3.0.05.0.3

Products include Vaadin Flow, Vaadin Vaadin.

How do I fix CVE-2021-31404?

Upgrade com.vaadin:flow-server to a fixed version for your release line: 1.0.14, 2.4.7 or 5.0.3.

Is CVE-2021-31404 being exploited?

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

Sources

Also known as GHSA-xwg3-qrcg-w9x6.

Is CVE-2021-31404 in your software?

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

Check your SBOMs for free