XSS in the /download Endpoint of the JPA Web API
Impact
The input parameter, which consists of a file path and name, can be manipulated to return the Content-Type header with text/html if the name part ends with .html. This could allow malicious JavaScript code to be executed in the browser. For a successful attack, a malicious file needs to be uploaded beforehand.
The severity of the vulnerability is mitigated by the fact that the application UI and the JPA Web API are typically accessible only to authenticated users.
Patches
The problem has been fixed in CUBA JPA Web API add-on 1.1.1.
Workarounds
A workaround for those who are unable to upgrade: Disable Files Endpoint in CUBA Application.
References
Files Functionality Vulnerabilities :: Jmix Documentation
Similar vulnerability in Jmix: XSS in the /files Endpoint of the Generic REST API · Advisory · jmix-framework/jmix
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Java / Kotlin (Maven) | com.haulmont.addon.jpawebapi:jpawebapi-jpawebapi | < 1.1.1 | 1.1.1 |
References
- https://github.com/cuba-platform/jpawebapi/security/advisories/GHSA-hg25-w3vg-7279
- https://github.com/jmix-framework/jmix/security/advisories/GHSA-x27v-f838-jh93
- https://nvd.nist.gov/vuln/detail/CVE-2025-32961
- https://github.com/cuba-platform/jpawebapi/commit/78b837d7e2b12d0df69cef1bc6042ebf3bdaf22c
- https://docs.jmix.io/jmix/files-vulnerabilities.html
- https://docs.jmix.io/jmix/files-vulnerabilities.html#disable-files-endpoint-in-cuba-application
- https://github.com/cuba-platform/jpawebapi
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N- Weakness (CWE)
CWE-79- Platform
- Java / Kotlin (Maven)
- Package
com.haulmont.addon.jpawebapi:jpawebapi-jpawebapi- Disclosed
- 22.04.2025
- Updated
- 11.10.2026 12:21
Sources and licenses
OSV / GitHub Advisory Database - GHSA-hg25-w3vg-7279 - CC BY 4.0
Vulnerability history: com.haulmont.addon.jpawebapi:jpawebapi-jpawebapi
All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.
This is the only known vulnerability of this package.
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.