CVE-2022-29567: Information Disclosure in Vaadin TreeGrid Component

com.vaadin:vaadin Updated 02 Oct 2025

Summary

25/05/2022
Yes i
Moderate
5.7

CVE-2022-29567: Possible information disclosure inside TreeGrid component with default data provider. Affects com.vaadin:vaadin across 3 version ranges.

>= 14.8.5, < 14.8.10 >= 22.0.6, < 22.0.15 >= 23.0.0, < 23.0.9

Fixed in 14.8.10, 22.0.15 or 23.0.9, depending on the release line you run. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The Vaadin package is a Java framework for building modern web applications. It provides a set of user interface components, including the TreeGrid component, which allows for the display and manipulation of hierarchical data. The TreeGrid component uses Object::toString as a key for client-side and server communication. However, this default configuration can lead to potential information disclosure of values that should not be available on the client-side.

Vulnerability Detail

The vulnerability (CVE-2022-29567) arises from the use of Object::toString as a key in the TreeGrid component's default configuration. This can result in the exposure of sensitive information that should not be accessible to clients. Attackers may exploit this vulnerability to gain unauthorized access to confidential data, compromising the security and privacy of the application and its users. The vulnerability affects Vaadin versions 14.8.5 through 14.8.9, 22.0.6 through 22.0.14, 23.0.0.beta2 through 23.0.8, and 23.1.0.alpha1 through 23.1.0.alpha4.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • >= 14.8.5, < 14.8.10 14.8.10
  • >= 22.0.6, < 22.0.15 22.0.15
  • >= 23.0.0, < 23.0.9 23.0.9

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Workaround

As a temporary workaround, developers can customize the key used in the TreeGrid component's configuration to avoid using Object::toString. By providing a different key implementation that does not expose sensitive information, the vulnerability can be mitigated. Here's an example of how to customize the key:

TreeGrid grid = new TreeGrid();
grid.setKeyMapper(new KeyMapper() {
  @Override
  public String key(Object item) {
    // Implement custom key generation logic here
    return generateCustomKey(item);
  }
});

In this example, the generateCustomKey method should be implemented to generate a unique key for each item in the TreeGrid.

Conclusion

The vulnerability (CVE-2022-29567) in the Vaadin TreeGrid component allows for the potential disclosure of sensitive information to clients. To mitigate this vulnerability, it is recommended to upgrade to the latest patched version of Vaadin. Developers can also implement a temporary workaround by customizing the key used in the TreeGrid component's configuration. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for com.vaadin:vaadin →

Share this vulnerability

FAQ

The vulnerability allows for the potential disclosure of sensitive information that should not be accessible to clients. This can lead to unauthorized access to confidential data and compromise the security and privacy of the application and its users.

The vulnerability affects Vaadin versions 14.8.5 through 14.8.9, 22.0.6 through 22.0.14, 23.0.0.beta2 through 23.0.8, and 23.1.0.alpha1 through 23.1.0.alpha4.

To fix this vulnerability, it is recommended to upgrade to the latest patched version of Vaadin. For versions 14.8.5 through 14.8.9, upgrade to version 14.8.10. For versions 22.0.6 through 22.0.14, upgrade to version 22.0.15. For versions 23.0.0.beta2 through 23.0.8 and 23.1.0.alpha1 through 23.1.0.alpha4, upgrade to version 23.0.9.

Yes, as a temporary workaround, developers can customize the key used in the TreeGrid component's configuration to avoid using Object::toString. By providing a different key implementation that does not expose sensitive information, the vulnerability can be mitigated.

You can find more information about this vulnerability, including the affected versions and fixed versions, in the advisory on the GitHub Advisory Database: [link to advisory]

Related vulnerabilities

Recent vulnerabilities recorded for com.vaadin:vaadin.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • >= 14.8.5, < 14.8.10 14.8.10
  • >= 22.0.6, < 22.0.15 22.0.15
  • >= 23.0.0, < 23.0.9 23.0.9

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback