Headline
CVE-2022-29567: CVE-2022-29567: Possible information disclosure inside TreeGrid component with default data provider
The default configuration of a TreeGrid component uses Object::toString as a key on the client-side and server communication in Vaadin 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, resulting in potential information disclosure of values that should not be available on the client-side.
The default configuration of a TreeGrid component uses Object::toString as a key on the client-side and server communication in Vaadin 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, resulting in potential information disclosure of values that should not be available on the client-side.
See CWE-200, Exposure of Sensitive Information to an Unauthorized Actor
Affected products and mitigation
Users of affected versions should apply the following mitigation or upgrade. Releases that have fixed this issue include:
Product version
Mitigation
Vaadin 14.8.5 - 14.8.9
Upgrade to 14.8.10
Vaadin 22.0.6 - 22.0.14
Upgrade to 22.0.15
Vaadin 23.0.0.beta2 - 23.0.8
Upgrade to 23.0.9
Vaadin 23.1.0.alpha1 - 23.1.0.alpha4
Upgrade to 23.1.0.beta1
Vulnerable artifacts
Maven coordinates
Vulnerable version
Fixed version
com.vaadin:vaadin-grid-flow
14.8.5 - 14.8.9
≥14.8.10
com.vaadin:vaadin-grid-flow
22.0.6 - 22.0.14
≥22.0.15
com.vaadin:vaadin-grid-flow
23.0.0.beta2 - 23.0.8
≥23.0.9
com.vaadin:vaadin-grid-flow
23.1.0.alpha1 - 23.1.0.alpha4
≥23.1.0.beta1
Credit
This issue was discovered and responsibly reported by Christian “Knoobie” Knoop.
References
- PR: https://github.com/vaadin/flow-components/pull/3046
Related news
### Description The default configuration of a TreeGrid component uses Object::toString as a key on the client-side and server communication in Vaadin 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, resulting in potential information disclosure of values that should not be available on the client-side.