{"api_version":"1","generated_at":"2026-05-13T00:06:32+00:00","cve":"CVE-2021-31411","urls":{"html":"https://cve.report/CVE-2021-31411","api":"https://cve.report/api/cve/CVE-2021-31411.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2021-31411","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2021-31411"},"summary":{"title":"CVE-2021-31411","description":"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.","state":"PUBLIC","assigner":"security@vaadin.com","published_at":"2021-05-05 19:15:00","updated_at":"2021-05-18 14:01:00"},"problem_types":["NVD-CWE-Other"],"metrics":[],"references":[{"url":"https://vaadin.com/security/cve-2021-31411","name":"https://vaadin.com/security/cve-2021-31411","refsource":"CONFIRM","tags":[],"title":"CVE-2021-31411: Insecure temporary directory usage in frontend build functionality of Vaadin 14 and 15-19","mime":"text/html","httpstatus":"200","archivestatus":"404"},{"url":"https://github.com/vaadin/flow/pull/10640","name":"https://github.com/vaadin/flow/pull/10640","refsource":"CONFIRM","tags":[],"title":"fix: Compare file content from stream by caalador · Pull Request #10640 · vaadin/flow · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"404"},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-31411","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-31411","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2021","cve_id":"31411","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"vaadin","cpe5":"flow","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2021","cve_id":"31411","vulnerable":"1","versionEndIncluding":"5.0.0","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"vaadin","cpe5":"flow","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2021","cve_id":"31411","vulnerable":"1","versionEndIncluding":"6.0.6","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"vaadin","cpe5":"flow","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2021","cve_id":"31411","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"vaadin","cpe5":"vaadin","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[{"cve":"CVE-2021-31411","qid":"982539","title":"Java (maven) Security Update for com.vaadin:vaadin-bom (GHSA-p826-8vhq-h439)"}]},"source_records":{"cve_program":{"data_type":"CVE","data_format":"MITRE","data_version":"4.0","generator":{"engine":"Vulnogram 0.0.9"},"CVE_data_meta":{"ID":"CVE-2021-31411","ASSIGNER":"security@vaadin.com","DATE_PUBLIC":"2021-05-04T08:17:00.000Z","TITLE":"Insecure temporary directory usage in frontend build functionality of Vaadin 14 and 15-19","AKA":"","STATE":"PUBLIC"},"source":{"defect":[],"advisory":"","discovery":"INTERNAL"},"affects":{"vendor":{"vendor_data":[{"vendor_name":"Vaadin","product":{"product_data":[{"product_name":"Vaadin","version":{"version_data":[{"version_name":"","version_affected":">=","version_value":"14.0.3","platform":""},{"version_name":"","version_affected":"<=","version_value":"14.5.2","platform":""},{"version_name":"","version_affected":">=","version_value":"15.0.0","platform":""},{"version_name":"","version_affected":"<","version_value":"19.0.0","platform":""},{"version_name":"","version_affected":">=","version_value":"19.0.0","platform":""},{"version_name":"","version_affected":"<=","version_value":"19.0.4","platform":""}]}},{"product_name":"flow-server","version":{"version_data":[{"version_name":"","version_affected":">=","version_value":"2.0.9","platform":""},{"version_name":"","version_affected":"<=","version_value":"2.5.2","platform":""},{"version_name":"","version_affected":">=","version_value":"3.0.0","platform":""},{"version_name":"","version_affected":"<","version_value":"6.0.0","platform":""},{"version_name":"","version_affected":">=","version_value":"6.0.0","platform":""},{"version_name":"","version_affected":"<=","version_value":"6.0.5","platform":""}]}}]}}]}},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"CWE-379 Creation of Temporary File in Directory with Incorrect Permissions"}]}]},"description":{"description_data":[{"lang":"eng","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."}]},"references":{"reference_data":[{"refsource":"CONFIRM","url":"https://vaadin.com/security/cve-2021-31411","name":"https://vaadin.com/security/cve-2021-31411"},{"refsource":"CONFIRM","url":"https://github.com/vaadin/flow/pull/10640","name":"https://github.com/vaadin/flow/pull/10640"}]},"configuration":[],"impact":{"cvss":{"version":"3.1","attackVector":"LOCAL","attackComplexity":"HIGH","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"NONE","vectorString":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N","baseScore":6.3,"baseSeverity":"MEDIUM"}},"exploit":[],"work_around":[],"solution":[],"credit":[]},"nvd":{"publishedDate":"2021-05-05 19:15:00","lastModifiedDate":"2021-05-18 14:01:00","problem_types":["NVD-CWE-Other"],"metrics":{"baseMetricV3":{"cvssV3":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH","baseScore":7.8,"baseSeverity":"HIGH"},"exploitabilityScore":1.8,"impactScore":5.9},"baseMetricV2":{"cvssV2":{"version":"2.0","vectorString":"AV:L/AC:L/Au:N/C:P/I:P/A:P","accessVector":"LOCAL","accessComplexity":"LOW","authentication":"NONE","confidentialityImpact":"PARTIAL","integrityImpact":"PARTIAL","availabilityImpact":"PARTIAL","baseScore":4.6},"severity":"MEDIUM","exploitabilityScore":3.9,"impactScore":6.4,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":false}},"configurations":{"CVE_data_version":"4.0","nodes":[{"operator":"OR","children":[],"cpe_match":[{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:vaadin:flow:*:*:*:*:*:*:*:*","versionStartIncluding":"3.0.0","versionEndIncluding":"5.0.0","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:vaadin:flow:*:*:*:*:*:*:*:*","versionStartIncluding":"6.0.0","versionEndIncluding":"6.0.6","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:vaadin:flow:*:*:*:*:*:*:*:*","versionStartIncluding":"2.0.9","versionEndExcluding":"2.5.3","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:vaadin:vaadin:*:*:*:*:*:*:*:*","versionStartIncluding":"15.0.0","versionEndExcluding":"19.0.5","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:vaadin:vaadin:*:*:*:*:*:*:*:*","versionStartIncluding":"14.0.3","versionEndExcluding":"14.5.3","cpe_name":[]}]}]}},"legacy_mitre":{"record":{"CveYear":"2021","CveId":"31411","Ordinal":"206698","Title":"CVE-2021-31411","CVE":"CVE-2021-31411","Year":"2021"},"notes":[{"CveYear":"2021","CveId":"31411","Ordinal":"1","NoteData":"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.","Type":"Description","Title":null},{"CveYear":"2021","CveId":"31411","Ordinal":"2","NoteData":"2021-05-05","Type":"Other","Title":"Published"},{"CveYear":"2021","CveId":"31411","Ordinal":"3","NoteData":"2021-05-05","Type":"Other","Title":"Modified"}]}}}