Vulnerability GHSA-q9mq-245r-4g93

Medium Risk
MEDIUM RISK
CVSS Score: 6.0
Score Range: 4.0–6.9
Medium severity vulnerabilities (CVSS 4.0–6.9). Important issues that meaningfully reduce security confidence.
2 hours ago
October 07, 2026 at 04:14 PM UTC
Quasar Framework: App Vite build cleanup can recursively remove unsafe configured output directories
1.0.0 - 3.2.0
1.0.0 - 3.2.0

Summary

Quasar Framework: App Vite build cleanup can recursively remove unsafe configured output directories

Details

Summary

@quasar/app-vite recursively removes build.distDir before producing build artifacts. The configured path was made absolute, but it was not checked before removal. A configuration mistake could therefore target the project root, user home directory, a filesystem root, or another directory outside the project.

Details

The build command and mode builders passed the resolved output directory directly to fs-extra recursive removal. Existing symlink ancestors were not resolved before deletion either, so a path that appeared to be inside the project could operate on a directory outside it.

quasar.config is trusted application code, and no attacker-controlled input reaches build.distDir by default. This issue is primarily destructive-build safety hardening. It can become a security boundary when build configuration is generated or influenced by less-trusted automation.

Impact

Running a normal Quasar build with an unsafe build.distDir can delete data accessible to the build user before compilation begins.

Remediation

Validate the effective deletion target before every artifact cleanup. Always reject filesystem roots, the user home directory and the project root; resolve existing symlink ancestors; require an explicit build.allowOutsideProjectDistDir opt-in for external output directories; and log the exact resolved target before removal.

Impacted packages

Timeline

Published
2 hours ago
October 07, 2026 at 04:14 PM UTC
Fixed (3.3.0)
2 months ago
July 29, 2026 at 01:37 PM UTC
Last Modified
2 hours ago
October 07, 2026 at 04:30 PM UTC