CVE-2026-91860
Received Received - Intake

Prototype Pollution in Vaadin Charts and Component Base

Vulnerability report for CVE-2026-91860, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-30

Last updated on: 2026-09-30

Assigner: Vaadin Ltd.

Description

A prototype pollution vulnerability exists in the deep merge helpers of Vaadin Charts and Vaadin Component Base. Merging an object the application does not control into a chart configuration or into a component's i18n property writes onto Object.prototype, making the injected properties visible to every object in the running application. Users of affected versions should apply the following mitigation or upgrade. Releases that have fixed this issue include: Product version Vaadin 23.0.0 - 23.6.13 Vaadin 24.0.0 - 24.9.20 Vaadin 24.10.0 - 24.10.9 Vaadin 25.0.0 - 25.1.11 Vaadin 25.2.0 - 25.2.6 Mitigation Upgrade to 23.6.14 Upgrade to 24.9.21 Upgrade to 24.10.10 Upgrade to 25.1.12 Upgrade to 25.2.7 or newer Please note that Vaadin versions 10-13 and 15-22 are no longer supported and you should update either to the latest 23, 24, 25 version. Artifacts Maven coordinates Vulnerable versions Fixed version com.vaadin:vaadin 23.0.0 - 23.6.13 >=23.6.14 com.vaadin:vaadin 24.0.0 - 24.9.20 >=24.9.21 com.vaadin:vaadin 24.10.0 - 24.10.9 >=24.10.10 com.vaadin:vaadin 25.0.0 - 25.1.11 >=25.1.12 com.vaadin:vaadin 25.2.0 - 25.2.6 >=25.2.7 com.vaadin:vaadin-core 24.7.0 - 24.9.20 >=24.9.21 com.vaadin:vaadin-core 24.10.0 - 24.10.9 >=24.10.10 com.vaadin:vaadin-core 25.0.0 - 25.1.11 >=25.1.12 com.vaadin:vaadin-core 25.2.0 - 25.2.6 >=25.2.7 com.vaadin:vaadin-charts-flow 23.0.0 - 23.6.13 >=23.6.14 com.vaadin:vaadin-charts-flow 24.0.0 - 24.9.20 >=24.9.21 com.vaadin:vaadin-charts-flow 24.10.0 - 24.10.9 >=24.10.10 com.vaadin:vaadin-charts-flow 25.0.0 - 25.1.11 >=25.1.12 com.vaadin:vaadin-charts-flow 25.2.0 - 25.2.6 >=25.2.7 npm packages npm package Vulnerable versions Fixed version @vaadin/charts 23.0.0 - 23.6.4 >=23.6.5 @vaadin/charts 24.0.0 - 24.9.17 >=24.9.18 @vaadin/charts 24.10.0 - 24.10.4 >=24.10.5 @vaadin/charts 25.0.0 - 25.1.11 >=25.1.12 @vaadin/charts 25.2.0 - 25.2.8 >=25.2.9 @vaadin/component-base 24.7.0 - 24.9.17 >=24.9.18 @vaadin/component-base 24.10.0 - 24.10.4 >=24.10.5 @vaadin/component-base 25.0.0 - 25.1.11 >=25.1.12 @vaadin/component-base 25.2.0 - 25.2.8 >=25.2.9

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-30
Last Modified
2026-09-30
Generated
2026-09-30
AI Q&A
2026-09-30
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 23 associated CPEs
Vendor Product Version / Range
vaadin vaadin to 23.6.13 (inc)
vaadin vaadin to 24.9.20 (inc)
vaadin vaadin to 24.10.9 (inc)
vaadin vaadin to 25.1.11 (inc)
vaadin vaadin to 25.2.6 (inc)
vaadin vaadin-core to 24.9.20 (inc)
vaadin vaadin-core to 24.10.9 (inc)
vaadin vaadin-core to 25.1.11 (inc)
vaadin vaadin-core to 25.2.6 (inc)
vaadin vaadin-charts-flow to 23.6.13 (inc)
vaadin vaadin-charts-flow to 24.9.20 (inc)
vaadin vaadin-charts-flow to 24.10.9 (inc)
vaadin vaadin-charts-flow to 25.1.11 (inc)
vaadin vaadin-charts-flow to 25.2.6 (inc)
vaadin charts to 23.6.4 (inc)
vaadin charts to 24.9.17 (inc)
vaadin charts to 24.10.4 (inc)
vaadin charts to 25.1.11 (inc)
vaadin charts to 25.2.8 (inc)
vaadin component-base to 24.9.17 (inc)
vaadin component-base to 24.10.4 (inc)
vaadin component-base to 25.1.11 (inc)
vaadin component-base to 25.2.8 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-1321 The product receives input from an upstream component that specifies attributes that are to be initialized or updated in an object, but it does not properly control modifications of attributes of the object prototype.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a prototype pollution vulnerability in Vaadin Charts and Component Base. It occurs when merging untrusted objects into chart configurations or component i18n properties. The deep merge process copies properties without filtering prototype chain keys like __proto__, allowing attackers to inject properties into Object.prototype. This makes injected properties visible across the entire application, potentially corrupting logic or enabling further attacks.

Detection Guidance

This vulnerability cannot be directly detected via network or system commands as it requires code analysis. Check if your Vaadin application uses vulnerable versions of com.vaadin:vaadin, com.vaadin:vaadin-core, com.vaadin:vaadin-charts-flow, @vaadin/charts, or @vaadin/component-base by inspecting dependency versions in your project files.

Impact Analysis

The vulnerability can corrupt application logic, cause denial of service, or serve as a vector for further attacks. It specifically affects applications that assign externally sourced objects to i18n properties, chart configurations, or updateConfiguration() in charts. Attackers could manipulate application behavior or access sensitive data.

Mitigation Strategies
  • Upgrade Vaadin components to fixed versions: Vaadin 23.6.14+, 24.9.21+, 24.10.10+, 25.1.12+, or 25.2.7+.
  • For npm packages, upgrade to @vaadin/charts >=23.6.5, >=24.9.18, >=24.10.5, >=25.1.12, or >=25.2.9 and @vaadin/component-base >=24.9.18, >=24.10.5, >=25.1.12, or >=25.2.9.
  • Review application code for usage of i18n properties, chart configuration, or updateConfiguration() methods that merge untrusted input.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-91860. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart