LiveActive security incident?Get immediate response
CVE Record

CVE-2021-31411: Insecure temporary directory usage in frontend build functionality of Vaadin 14 and 15-19

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.

MediumCVSS 6.3Not KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

A local user on a build host could tamper with Vaadin frontend build resources because affected versions used a temporary directory insecurely. The risk is mainly to organizations where untrusted or weakly separated users can access CI, developer, or shared build machines.

Executive priority

Treat as a medium-priority build-chain integrity issue. Prioritize remediation for production build pipelines, shared developer hosts, and CI systems where local user separation is weak.

Technical view

CVE-2021-31411 affects Vaadin frontend build functionality in com.vaadin:flow-server 2.0.9-2.5.2, 3.0 before 6.0, and 6.0.0-6.0.5. It is CWE-379 and can let a low-privileged local user inject malicious code into frontend resources during application rebuilds.

Likely exposure

Exposure is most likely in Vaadin applications built with affected flow-server or Vaadin 14.0.3-14.5.2, Vaadin 15 before 19, or Vaadin 19.0.0-19.0.4 on shared or multi-user build systems.

Exploitation context

The CVSS vector is local, high complexity, and low privilege. The provided sources do not show active exploitation, and the CVE is not listed as KEV. Practical risk depends on local access to the build environment and rebuild timing.

Researcher notes

The vulnerability is constrained by local access and high attack complexity but has high confidentiality and integrity impact if successful. The source bundle does not provide exploit details, observed exploitation, or complete environmental prerequisites beyond local code injection during rebuilds.

Mitigation direction

  • Upgrade Vaadin or flow-server to versions outside the affected ranges.
  • Confirm the target fixed version against Vaadin's advisory.
  • Restrict build host and CI access to trusted users only.
  • Rebuild frontend artifacts from a trusted, clean workspace.
  • Review vendor guidance before relying on temporary operational workarounds.

Validation and detection

  • Inventory Vaadin and com.vaadin:flow-server versions in application dependencies.
  • Check whether builds run on shared or multi-user systems.
  • Review CI and developer hosts for untrusted local user access.
  • Confirm generated frontend resources are rebuilt after upgrading.
  • Track remediation evidence against the Vaadin advisory and dependency manifests.
Prepared
Confidence
high
Sources
4

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-379: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2021-31411 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Medium
CVSS
6.3 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
3Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
6.3CVSS 3.1MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N15.2Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

6.3Medium
CVSS 3.1 vector shape for CVE-2021-31411Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
VaadinVaadin14.0.3Listed
Vaadinflow-server2.0.9Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-379 · source CWE mapping

Creation of Temporary File in Directory with Insecure Permissions

Creation of Temporary File in Directory with Insecure Permissions represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.