title: Possible information disclosure inside TreeGrid component with default data provider
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.
problem types: CWE-200 Information Exposure
affected:
{
product: vaadin
vendor: Vaadin
versions:
lessThan: unspecified, status: affected, version: 14.8.5, versionType: custom
lessThanOrEqual: 14.8.9, status: affected, version: unspecified, versionType: custom
lessThan: unspecified, status: affected, version: 22.0.6, versionType: custom
lessThanOrEqual: 22.0.14, status: affected, version: unspecified, versionType: custom
lessThan: unspecified, status: affected, version: 23.0.0.beta2, versionType: custom
lessThanOrEqual: 23.0.8, status: affected, version: unspecified, versionType: custom
lessThan: unspecified, status: affected, version: 23.1.0.alpha1, versionType: custom
lessThanOrEqual: 23.1.0.alpha4, status: affected, version: unspecified, versionType: custom
}
{
product: vaadin-grid-flow
vendor: Vaadin
versions:
lessThan: unspecified, status: affected, version: 14.8.5, versionType: custom
lessThanOrEqual: 14.8.9, status: affected, version: unspecified, versionType: custom
lessThan: unspecified, status: affected, version: 22.0.6, versionType: custom
lessThanOrEqual: 22.0.14, status: affected, version: unspecified, versionType: custom
lessThan: unspecified, status: affected, version: 23.0.0.beta2, versionType: custom
lessThanOrEqual: 23.0.8, status: affected, version: unspecified, versionType: custom
lessThan: unspecified, status: affected, version: 23.1.0.alpha1, versionType: custom
lessThanOrEqual: 23.1.0.alpha4, status: affected, version: unspecified, versionType: custom
}
metrics:
cvssV3_1: [
attackComplexity: LOW
attackVector: NETWORK
availabilityImpact: NONE
baseScore: 5.7
baseSeverity: MEDIUM
confidentialityImpact: HIGH
integrityImpact: NONE
privilegesRequired: LOW
scope: UNCHANGED
userInteraction: REQUIRED
vectorString: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N
version: 3.1
]
workarounds: User might define either: custom `toString()` or `getId()` in their entity.