Push Endpoint Returns Permissive CORS Headers
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 14.14.8, 23.6.17, 24.4.26, 24.7.17, 24.9.24, and 14 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
Vaadin Flow and Vaadin Framework applications that use server push (@Push) are affected, including all Flow releases and Vaadin Framework from 7.1.0 onward. A malicious website could make cross-origin requests to the push endpoint using a logged-in user's cookies and read the responses, which could expose information if the attacker also knows the session's push identifier.
Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.
Read the original description
The push endpoint of a Vaadin application that uses server push reflects the request Origin into the Access-Control-Allow-Origin response header and allows credentials, because Flow configures Atmosphere with DROP_ACCESS_CONTROL_ALLOW_ORIGIN_HEADER set to false and its CorsInterceptor then echoes whatever Origin the request carries. A page on any origin can therefore make a cross origin request to that endpoint with the user's cookies and read the response, although reading anything useful also requires the push identifier of that session. Applications that do not use @Push are not affected, and neither is the WebSocket transport. The behaviour was introduced in January 2015 and is present in every Flow release and in Vaadin Framework from 7.1.0, which is when push was added. Users of affected versions should apply the following mitigation or upgrade. Releases that have fixed this issue include: Product version Vaadin 14.14.0 - 14.14.7 Vaadin 23.6.0 - 23.6.16 Vaadin 24.4.0 - 24.4.25 Vaadin 24.5.0 - 24.5.15 Vaadin 24.6.0 - 24.6.13 Vaadin 24.7.0 - 24.7.16 Vaadin 24.8.0 - 24.8.17 Vaadin 24.9.0 - 24.9.23 Vaadin 24.10.0 - 24.10.11 Vaadin 25.0.0 - 25.0.13 Vaadin 25.1.0 - 25.1.13 Vaadin 25.2.0 - 25.2.10 Vaadin 25.3.0 - 25.3.2 Vaadin Framework 7.1.0 - 7.7.54 Vaadin Framework 8.0.0 - 8.32.1 Mitigation Upgrade to 14.14.8 Upgrade to 23.6.17 Upgrade to 24.4.26 Upgrade to 24.7.17 Upgrade to 24.7.17 Upgrade to 24.7.17 Upgrade to 24.9.24 Upgrade to 24.9.24 Upgrade to 24.10.12 Upgrade to 25.2.11 Upgrade to 25.2.11 Upgrade to 25.2.11 Upgrade to 25.3.3 Upgrade to 7.7.55 Upgrade to 8.32.2 Please note that Vaadin versions 10-13 and 15-22 are no longer supported and you should update either to the latest 14, 23, 24, 25 version. Artifacts under com.vaadin Maven coordinates / Vulnerable versions / Fixed version vaadin / 14.14.0 - 14.14.7 / >=14.14.8 vaadin / 23.6.0 - 23.6.16 / >=23.6.17 vaadin / 24.4.0 - 24.4.25 / >=24.4.26 vaadin / 24.5.0 - 24.5.15 / >=24.7.17 vaadin / 24.6.0 - 24.6.13 / >=24.7.17 vaadin / 24.7.0 - 24.7.16 / >=24.7.17 vaadin / 24.8.0 - 24.8.17 / >=24.9.24 vaadin / 24.9.0 - 24.9.23 / >=24.9.24 vaadin / 24.10.0 - 24.10.11 / >=24.10.12 vaadin / 25.0.0 - 25.0.13 / >=25.2.11 vaadin / 25.1.0 - 25.1.13 / >=25.2.11 vaadin / 25.2.0 - 25.2.10 / >=25.2.11 vaadin / 25.3.0 - 25.3.2 / >=25.3.3 vaadin-core / 14.14.0 - 14.14.7 / >=14.14.8 vaadin-core / 23.6.0 - 23.6.16 / >=23.6.17 vaadin-core / 24.4.0 - 24.4.25 / >=24.4.26 vaadin-core / 24.5.0 - 24.5.15 / >=24.7.17 vaadin-core / 24.6.0 - 24.6.13 / >=24.7.17 vaadin-core / 24.7.0 - 24.7.16 / >=24.7.17 vaadin-core / 24.8.0 - 24.8.17 / >=24.9.24 vaadin-core / 24.9.0 - 24.9.23 / >=24.9.24 vaadin-core / 24.10.0 - 24.10.11 / >=24.10.12 vaadin-core / 25.0.0 - 25.0.13 / >=25.2.11 vaadin-core / 25.1.0 - 25.1.13 / >=25.2.11 vaadin-core / 25.2.0 - 25.2.10 / >=25.2.11 vaadin-core / 25.3.0 - 25.3.2 / >=25.3.3 flow-server / 2.13.0 - 2.13.7 / >=2.13.8 flow-server / 23.6.0 - 23.6.15 / >=23.6.16 flow-server / 24.4.0 - 24.4.18 / >=24.4.19 flow-server / 24.5.0 - 24.5.17 / >=24.7.17 flow-server / 24.6.0 - 24.6.14 / >=24.7.17 flow-server / 24.7.0 - 24.7.15 / >=24.7.16 flow-server / 24.8.0 - 24.8.16 / >=24.9.24 flow-server / 24.9.0 - 24.9.28 / >=24.9.29 flow-server / 24.10.0 - 24.10.14 / >=24.10.15 flow-server / 25.0.0 - 25.0.15 / >=25.2.11 flow-server / 25.1.0 - 25.1.18 / >=25.1.19 flow-server / 25.2.0 - 25.2.12 / >=25.2.13 flow-server / 25.3.0 - 25.3.3 / >=25.3.4 vaadin-server / 7.1.0 - 7.7.54 / >=7.7.55 vaadin-server / 8.0.0 - 8.32.1 / >=8.32.2 vaadin-server-mpr-jakarta / 7.7.36 - 7.7.54 / >=7.7.55 vaadin-server-mpr-jakarta / 8.18.0 - 8.32.1 / >=8.32.2
Timeline
- CVE published
- First seen by cve.now
- Record last updated
Affected versions
- com.vaadin:vaadin
From 14.14.0 · fixed in 14.14.8; From 23.6.0 · fixed in 23.6.17; From 24.4.0 · fixed in 24.4.26; From 24.5.0 · through 24.5.15; From 24.6.0 · through 24.6.13; From 24.7.0 · fixed in 24.7.17; From 24.8.0 · through 24.8.17; From 24.9.0 · fixed in 24.9.24; From 24.10.0 · fixed in 24.10.12; From 25.0.0 · through 25.0.13; From 25.1.0 · through 25.1.13; From 25.2.0 · fixed in 25.2.11; From 25.3.0 · fixed in 25.3.3
- com.vaadin:vaadin-core
From 14.14.0 · fixed in 14.14.8; From 23.6.0 · fixed in 23.6.17; From 24.4.0 · fixed in 24.4.26; From 24.5.0 · through 24.5.15; From 24.6.0 · through 24.6.13; From 24.7.0 · fixed in 24.7.17; From 24.8.0 · through 24.8.17; From 24.9.0 · fixed in 24.9.24; From 24.10.0 · fixed in 24.10.12; From 25.0.0 · through 25.0.13; From 25.1.0 · through 25.1.13; From 25.2.0 · fixed in 25.2.11; From 25.3.0 · fixed in 25.3.3
- com.vaadin:flow-server
From 2.13.0 · fixed in 2.13.8; From 23.6.0 · fixed in 23.6.16; From 24.4.0 · fixed in 24.4.19; From 24.5.0 · through 24.5.17; From 24.6.0 · through 24.6.14; From 24.7.0 · fixed in 24.7.16; From 24.8.0 · through 24.8.16; From 24.9.0 · fixed in 24.9.29; From 24.10.0 · fixed in 24.10.15; From 25.0.0 · through 25.0.15; From 25.1.0 · fixed in 25.1.19; From 25.2.0 · fixed in 25.2.13; From 25.3.0 · fixed in 25.3.4
- com.vaadin:vaadin-server
From 7.1.0 · fixed in 7.7.55; From 8.0.0 · fixed in 8.32.2
- com.vaadin:vaadin-server-mpr-jakarta
From 7.7.36 · fixed in 7.7.55; From 8.18.0 · fixed in 8.32.2