CVE-2025-32961
The Cuba JPA web API enables loading and saving any entities defined in the application data model by sending simple HTTP requests. Prior to version 1.1.1, 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. This issue has been patched in version 1.1.1. A workaround is provided on the Jmix documentation website.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
- Puntuación base: 6.4
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.32%
- Percentil entre todas las CVEs puntuadas: 23
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
CWE
- CWE-79
Referencias
- 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/commit/78b837d7e2b12d0df69cef1bc6042ebf3bdaf22c
- https://github.com/cuba-platform/jpawebapi/security/advisories/GHSA-hg25-w3vg-7279
JSON original (NVD)
Mostrar
{
"id": "CVE-2025-32961",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2025-32961",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2025-04-22T18:53:35.584353Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "CHANGED",
"version": "3.1",
"baseScore": 6.4,
"attackVector": "NETWORK",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N",
"integrityImpact": "LOW",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "NONE",
"privilegesRequired": "LOW",
"confidentialityImpact": "LOW"
},
"impactScore": 2.7,
"exploitabilityScore": 3.1
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "cuba-platform",
"product": "jpawebapi",
"versions": [
{
"status": "affected",
"version": "< 1.1.1"
}
]
}
]
}
],
"published": "2025-04-22T18:16:00.557",
"references": [
{
"url": "https://docs.jmix.io/jmix/files-vulnerabilities.html",
"source": "security-advisories@github.com"
},
{
"url": "https://docs.jmix.io/jmix/files-vulnerabilities.html#disable-files-endpoint-in-cuba-application",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/cuba-platform/jpawebapi/commit/78b837d7e2b12d0df69cef1bc6042ebf3bdaf22c",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/cuba-platform/jpawebapi/security/advisories/GHSA-hg25-w3vg-7279",
"source": "security-advisories@github.com"
}
],
"vulnStatus": "Deferred",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-79"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "The Cuba JPA web API enables loading and saving any entities defined in the application data model by sending simple HTTP requests. Prior to version 1.1.1, 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. This issue has been patched in version 1.1.1. A workaround is provided on the Jmix documentation website."
},
{
"lang": "es",
"value": "La API web de Cuba JPA permite cargar y guardar cualquier entidad definida en el modelo de datos de la aplicación mediante el envío de solicitudes HTTP simples. Antes de la versión 1.1.1, el parámetro de entrada, que consiste en la ruta y el nombre del archivo, podía manipularse para devolver el encabezado Content-Type con text/html si el nombre terminaba en .html. Esto podría permitir la ejecución de código JavaScript malicioso en el navegador. Para que un ataque tenga éxito, es necesario cargar previamente un archivo malicioso. Este problema se ha corregido en la versión 1.1.1. Se ofrece un workaround en el sitio web de documentación de Jmix."
}
],
"lastModified": "2026-06-17T09:12:52.187",
"sourceIdentifier": "security-advisories@github.com"
}