CVE-2021-31411
Estado: ModificadaAlta (7.8)—
Insecure temporary directory usage in frontend build functionality of com.vaadin:flow-server versions 2.0.9 through 2.5.2 (Vaadin 14.0.3 through Vaadin 14.5.2), 3.0 prior to 6.0 (Vaadin 15 prior to 19), and 6.0.0 through 6.0.5 (Vaadin 19.0.0 through 19.0.4) allows local users to inject malicious code into frontend resources during application rebuilds.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Puntuación base: 7.8
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.23%
- Percentil entre todas las CVEs puntuadas: 13
- Fecha de la puntuación: 4/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 (2)
CWE
- CWE-379
- NVD-CWE-Other
Referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2021-31411",
"cveTags": [],
"metrics": {
"cvssMetricV2": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"version": "2.0",
"baseScore": 4.6,
"accessVector": "LOCAL",
"vectorString": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
"authentication": "NONE",
"integrityImpact": "PARTIAL",
"accessComplexity": "LOW",
"availabilityImpact": "PARTIAL",
"confidentialityImpact": "PARTIAL"
},
"acInsufInfo": false,
"impactScore": 6.4,
"baseSeverity": "MEDIUM",
"obtainAllPrivilege": false,
"exploitabilityScore": 3.9,
"obtainUserPrivilege": false,
"obtainOtherPrivilege": false,
"userInteractionRequired": false
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security@vaadin.com",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 6.3,
"attackVector": "LOCAL",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "HIGH",
"availabilityImpact": "NONE",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.2,
"exploitabilityScore": 1
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7.8,
"attackVector": "LOCAL",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.9,
"exploitabilityScore": 1.8
}
]
},
"affected": [
{
"source": "security@vaadin.com",
"affectedData": [
{
"vendor": "Vaadin",
"product": "Vaadin",
"versions": [
{
"status": "affected",
"changes": [
{
"at": "15.0.0",
"status": "affected"
},
{
"at": "19.0.0",
"status": "unaffected"
},
{
"at": "19.0.0",
"status": "affected"
}
],
"version": "14.0.3",
"lessThan": "*",
"versionType": "custom"
}
]
},
{
"vendor": "Vaadin",
"product": "flow-server",
"versions": [
{
"status": "affected",
"changes": [
{
"at": "3.0.0",
"status": "affected"
},
{
"at": "6.0.0",
"status": "unaffected"
},
{
"at": "6.0.0",
"status": "affected"
}
],
"version": "2.0.9",
"lessThan": "*",
"versionType": "custom"
}
]
}
]
}
],
"published": "2021-05-05T19:15:08.777",
"references": [
{
"url": "https://github.com/vaadin/flow/pull/10640",
"tags": [
"Patch",
"Third Party Advisory"
],
"source": "security@vaadin.com"
},
{
"url": "https://vaadin.com/security/cve-2021-31411",
"tags": [
"Vendor Advisory"
],
"source": "security@vaadin.com"
},
{
"url": "https://github.com/vaadin/flow/pull/10640",
"tags": [
"Patch",
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "https://vaadin.com/security/cve-2021-31411",
"tags": [
"Vendor Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Secondary",
"source": "security@vaadin.com",
"description": [
{
"lang": "en",
"value": "CWE-379"
}
]
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "NVD-CWE-Other"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Insecure temporary directory usage in frontend build functionality of com.vaadin:flow-server versions 2.0.9 through 2.5.2 (Vaadin 14.0.3 through Vaadin 14.5.2), 3.0 prior to 6.0 (Vaadin 15 prior to 19), and 6.0.0 through 6.0.5 (Vaadin 19.0.0 through 19.0.4) allows local users to inject malicious code into frontend resources during application rebuilds."
},
{
"lang": "es",
"value": "Un uso de directorio temporal no seguro en la funcionalidad frontend build de com.vaadin:flow-server versiones 2.0.9 hasta 2.5.2 (Vaadin versiones 14.0.3 hasta Vaadin 14.5.2), versiones 3.0 anteriores 6.0 (Vaadin versiones 15 anteriores a 19) y versiones 6.0 .0 hasta 6.0.5 (Vaadin versiones 19.0.0 hasta 19.0.4), permite a usuarios locales inyectar código malicioso en los recursos frontend durante la reconstrucción de la aplicación"
}
],
"lastModified": "2026-06-17T03:51:43.947",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:vaadin:flow:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "5BDE9ACA-7666-444D-8615-A164C0E0A8A4",
"versionEndExcluding": "2.5.3",
"versionStartIncluding": "2.0.9"
},
{
"criteria": "cpe:2.3:a:vaadin:flow:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "2CA90E82-620F-46C0-AB1F-05804328BB54",
"versionEndIncluding": "5.0.0",
"versionStartIncluding": "3.0.0"
},
{
"criteria": "cpe:2.3:a:vaadin:flow:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B5DCFE72-3FCF-4ED7-A8B3-A0DBE48AE3A5",
"versionEndIncluding": "6.0.6",
"versionStartIncluding": "6.0.0"
},
{
"criteria": "cpe:2.3:a:vaadin:vaadin:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B77BD429-7BB9-454A-A2B2-71081416E416",
"versionEndExcluding": "14.5.3",
"versionStartIncluding": "14.0.3"
},
{
"criteria": "cpe:2.3:a:vaadin:vaadin:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "5B1E8A6A-57AD-41FA-8768-9B60C356E78B",
"versionEndExcluding": "19.0.5",
"versionStartIncluding": "15.0.0"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "security@vaadin.com"
}