Every CVE Search/ Get API key

CVE-2021-31404

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

4.0 MediumFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
High
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
Low
Integrity
Low
Availability
None

Exploit likelihood

0.21%Down 0.4 points since Apr 27, 2021
90%50%10%1%

What each source reports

CVE List Score used 4.0

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

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.

Record
CVE-2021-31404
CVSS 3.1
4.0 MediumCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-208
Updated
2026-11-02
EUVDEUVD-2021-0890 4.0

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.

Record
EUVD-2021-0890
CVSS 3.1
4.0 MediumCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Updated
2026-11-03
GitHub AdvisoriesGHSA-xwg3-qrcg-w9x6 4.0

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

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 through 13), 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.

Record
GHSA-xwg3-qrcg-w9x6
CVSS 3.1
4.0 MediumCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-203, CWE-208
Updated
2026-11-02
NVD 4.0

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.

Record
CVE-2021-31404
CVSS 3.1
4.0 MediumCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
CVSS 3.1
2.5 LowCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N
CVSS 2.0
1.9 LowAV:L/AC:M/Au:N/C:P/I:N/A:N
Weakness
CWE-208, CWE-203
Updated
2026-11-02
OSV 2.5

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.

Record
CVE-2021-31404
CVSS 3.1
2.5 LowCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N
Updated
2026-11-02
OSVGHSA-xwg3-qrcg-w9x6 4.0

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

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 through 13), 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.

Record
GHSA-xwg3-qrcg-w9x6
CVSS 3.1
4.0 MediumCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-203, CWE-208
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
com.vaadin:flow-server
Maven
1.0.0 up to 1.0.14
1.0.14
com.vaadin:flow-server
Maven
1.1.0 up to 2.4.7
2.4.7
com.vaadin:flow-server
Maven
3.0.0 up to 5.0.3
5.0.3
com.vaadin:flow-server
Maven
1.0.0 up to 1.0.14, plus listed versions
1.0.11.0.101.0.111.0.121.0.13
Show 8 moreShow less
1.0.21.0.31.0.41.0.51.0.61.0.71.0.81.0.9
1.0.14
com.vaadin:flow-server
Maven
1.1.0 up to 2.4.7, plus listed versions
1.2.01.2.11.2.21.2.31.2.4
Show 45 moreShow less
1.2.51.3.01.4.01.4.11.4.21.4.31.4.41.4.51.4.61.4.71.4.82.0.02.0.12.0.102.0.112.0.122.0.132.0.142.0.152.0.162.0.172.0.182.0.192.0.22.0.32.0.42.0.52.0.62.0.72.0.82.0.92.1.02.1.0.beta22.1.12.1.22.1.32.1.42.1.52.1.62.1.72.1.82.1.92.2.02.2.0.alpha112.2.1
2.4.7
com.vaadin:flow-server
Maven
3.0.0 up to 5.0.3, plus listed versions
3.0.13.0.23.0.33.0.43.0.5
Show 21 moreShow less
3.0.63.0.73.1.03.1.13.1.23.1.33.1.53.1.63.1.74.0.04.0.14.0.24.0.34.0.44.0.54.0.64.0.74.0.85.0.05.0.15.0.2
5.0.3

History

History
RecordedChangedSources
aliases, productsEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2021-31404 is a medium vulnerability (CVSS 4.0) in Flow Flow-server, published April 19, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.21%, the 11th percentile. Fixed in com.vaadin:flow-server 1.0.14.

References

This page doesn't list everything

Left out here: 18 versions. The JSON record has them.

MoveEnter Open