Skip to content

GHSA-mr8h-j9cv-4m8h CVE-2021-31408

Server session is not invalidated when logout() helper method of Authentication module is used in Vaadin 18-19

Medium Maven
Severity
6.3 / 10
Medium · CVSS 3.1
Exploit chance (EPSS)
0.32%
Chance of exploitation in the next 30 days. Higher than 25.25% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
CWE-287 Improper Authentication
CWE-613 Insufficient Session Expiration
Fix
19.0.4
Upgrade com.vaadin:vaadin-bom to this version or later

Description

Authentication.logout() helper in com.vaadin:flow-client versions 5.0.0 prior to 6.0.0 (Vaadin 18), and 6.0.0 through 6.0.4 (Vaadin 19.0.0 through 19.0.3) uses incorrect HTTP method, which, in combination with Spring Security CSRF protection, allows local attackers to access Fusion endpoints after the user attempted to log out.

Affected versions

Maven

PackageVulnerableFixed in
com.vaadin:vaadin-bom
>= 18.0.0, < 19.0.4
19.0.4

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

com.vaadin:vaadin-bom Maven → 19.0.4

maven
<dependency><groupId>com.vaadin</groupId><artifactId>vaadin-bom</artifactId><version>19.0.4</version></dependency>
gradle
implementation("com.vaadin:vaadin-bom:19.0.4")

Severity breakdown

CVSS 3.1 6.3

CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N

Attack vector
Local
Attack complexity
High
Privileges required
None
User interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Weakness

CWE-287: Improper Authentication

When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct.

How to prevent it
  • Architecture and Design: Use an authentication framework or library such as the OWASP ESAPI Authentication feature.

CWE-613: Insufficient Session Expiration

According to WASC, "Insufficient Session Expiration is when a web site permits an attacker to reuse old session credentials or session IDs for authorization."

How to prevent it
  • Implementation: Set sessions/credentials expiration date.

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-93c4-vf86-3rj7
Reflected cross-site scripting in vaadin-menu-bar webjar resources in Vaadin 14
Medium Also affects com.vaadin:vaadin-bom
GHSA-jfmf-w293-8xr8
Regular expression Denial of Service (ReDoS) in EmailValidator class in V7 compatibility module in Vaadin 8
High Also affects com.vaadin:vaadin-bom
GHSA-hw7r-qrhp-5pff
Unauthorized property update in CheckboxGroup component in Vaadin 12-14 and 15-20
Medium Also affects com.vaadin:vaadin-bom
GHSA-c99r-67x4-whj6
Reflected cross-site scripting in development mode handler in Vaadin 14, 15-19
Low Also affects com.vaadin:vaadin-bom
GHSA-qrg9-f472-qwfm
Possible route enumeration in production mode via RouteNotFoundError view in Vaadin 10, 11-14, and 15-19
Medium Also affects com.vaadin:vaadin-bom
GHSA-p826-8vhq-h439
Insecure temporary directory usage in frontend build functionality of Vaadin 14 and 15-19
Medium Also affects com.vaadin:vaadin-bom
GHSA-75xc-qvxh-27f8
Timing side channel vulnerability in UIDL request handler in Vaadin 7 and 8
Medium Also affects com.vaadin:vaadin-bom
GHSA-q74r-4xw3-ppx9
Stored cross-site scripting in Grid component in Vaadin 7 and 8
Medium Also affects com.vaadin:vaadin-bom
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor