CVE-2026-7860 json
Possible information disclosure of environment variables in Vaadin Build Plugins via Failed Frontend Build
published 2026-05-19 5 mo ago modified 2026-10-26 13 d ago also GHSA-j8mx-j73w-9mxw , EUVD-2026-30891
- cvss
- 1.6
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.1%
- EPSS 0.1% chance of exploitation in 30 days, percentile 1%
- public exploits
- 0
- none known
Summary
A possible information disclosure vulnerability exists in the Vaadin Maven plugin and Vaadin Gradle plugin that exposes the full set of environment variables in build logs whenever the frontend build process exits with a non-zero status. Because the build environment may contain credentials supplied as secrets, any failed frontend build can expose those secrets in clear text in CI logs and archived build artifacts.
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.9 Vaadin 24.0.0 - 24.9.16 Vaadin 24.10.0 - 24.10.3 Vaadin 25.0.0 - 25.0.10 Vaadin 25.1.0 - 25.1.4
Mitigation Upgrade to 23.6.10 Upgrade to 24.9.17 or newer Upgrade to 24.10.4 or newer Upgrade to 25.0.11 or newer Upgrade to 25.1.5 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, or 25 version.
ArtifactsMaven coordinatesVulnerable versionsFixed versioncom.vaadin:flow-plugin-base23.0.0 - 23.6.10≥23.6.11com.vaadin:flow-plugin-base24.0.0 - 24.9.17≥24.9.18com.vaadin:flow-plugin-base24.10.0 - 24.10.3≥24.10.4com.vaadin:flow-plugin-base25.0.0 - 25.0.11≥25.0.12com.vaadin:flow-plugin-base25.1.0 - 25.1.4≥25.1.5com.vaadin:flow-maven-plugin23.0.0 - 23.6.10≥23.6.11com.vaadin:flow-maven-plugin24.0.0 - 24.9.17≥24.9.18com.vaadin:flow-maven-plugin24.10.0 - 24.10.3≥24.10.4com.vaadin:flow-maven-plugin25.0.0 - 25.0.11≥25.0.12com.vaadin:flow-maven-plugin25.1.0 - 25.1.4≥25.1.5com.vaadin:flow-gradle-plugin23.0.0 - 23.6.10≥23.6.11com.vaadin:flow-gradle-plugin24.0.0 - 24.9.17≥24.9.18com.vaadin:flow-gradle-plugin24.10.0 - 24.10.3≥24.10.4com.vaadin:flow-gradle-plugin25.0.0 - 25.0.11≥25.0.12com.vaadin:flow-gradle-plugin25.1.0 - 25.1.4≥25.1.5
Patch / fix
- maven com.vaadin:flow-plugins 23.6.11, 24.9.18, 24.10.4, 25.0.12, 25.1.5
- maven com.vaadin:flow-maven-plugin 23.6.11, 24.9.18, 24.10.4, 25.0.12, 25.1.5
- maven com.vaadin:flow-gradle-plugin 24.9.18, 24.10.4, 25.0.12, 25.1.5
- github.com/vaadin/flow#24219 pull request
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 5 mo ago
Exploit prediction
0.12% chance of exploitation in the next 30 days, higher than 1% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 1.6 | CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:H/SA:N/E:U/S:N/AU:N/R:A/V:C/RE:L/U:Green |
| CNA | 4.0 | 1.6 | CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:P/VC:H/VI:N/VA:N/SC:H/SI:H/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:N/AU:N/R:A/V:C/RE:L/U:Green |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | com.vaadin:flow-plugins | >=23.0.0, <23.6.11 >=24.0.0, <24.9.18 >=24.10.0, <24.10.4 >=25.0.0, <25.0.12 >=25.1.0, <25.1.5 |
23.6.11 24.9.18 24.10.4 25.0.12 25.1.5 |
| maven | com.vaadin:flow-maven-plugin | >=23.0.0, <23.6.11 >=24.0.0, <24.9.18 >=24.10.0, <24.10.4 >=25.0.0, <25.0.12 >=25.1.0, <25.1.5 |
23.6.11 24.9.18 24.10.4 25.0.12 25.1.5 |
| maven | com.vaadin:flow-gradle-plugin | >=24.0.0, <24.9.18 >=24.10.0, <24.10.4 >=25.0.0, <25.0.12 >=25.1.0, <25.1.5 |
24.9.18 24.10.4 25.0.12 25.1.5 |
Affected products
- vaadin flow
Classification
- Weakness
-
- CWE-209 Generation of Error Message Containing Sensitive Information
References
Sources
- CVE List CVE-2026-7860
- GitHub Advisory GHSA-j8mx-j73w-9mxw
- NVD CVE-2026-7860
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.