Recursive cleanup in Quasar app-vite deletes unsafe build directories
Key facts
- Attack vector
- Local
- Privileges required
- High
- User interaction
- Active
- Attack complexity
- High
- Attack requirements
- Present
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-22 and the CVSS impact.
Summary
The @quasar/app-vite package from 1.0.0 before 3.3.0 recursively removes the configured build.distDir before building without checking whether it is the project root, a home directory, a filesystem root, or a symlink to an external directory (CWE-22). Exploitation requires compromised or less-trusted automation to influence build configuration, or a developer to run a mistaken configuration, since no attacker-controlled input reaches build.distDir by default.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Quasar Framework is a framework for building high-performance Vue.js user interfaces. From 1.0.0 until 3.3.0, @quasar/app-vite recursively removed the resolved build.distDir before building without rejecting the project root, user home directory, filesystem roots, or symlink-resolved external directories. An unsafe trusted configuration can delete data writable by the build user before compilation begins. No attacker-controlled input reaches build.distDir by default, so exploitation requires compromised or less-trusted automation to influence build configuration, or a developer to run a mistaken configuration. This issue is fixed in version 3.3.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| quasarframework | quasar | 2.7.0 to before 2.23.3 | 2.23.3 | Patch available | CNA |
| @quasar | app-vite | 1.0.0 to before 3.3.0 | 3.3.0 | Patch available | CNA |
| — | @quasar/app-vite (npm) | 1.0.0 to before 3.3.0 | 3.3.0 | Patch available | GHSA-q9mq-245r-4g93 |
- quasar Vendorquasarframework Affected 2.7.0 to before 2.23.3 Fixed in 2.23.3 Patch available CNA
- app-vite Vendor@quasar Affected 1.0.0 to before 3.3.0 Fixed in 3.3.0 Patch available CNA
- @quasar/app-vite (npm) Vendor— Affected 1.0.0 to before 3.3.0 Fixed in 3.3.0 Patch available GHSA-q9mq-245r-4g93
Remediation
Upgrade @quasar/app-vite to version 3.3.0, which fixes this issue. The sources list no fixed version for quasar.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA quasar (quasarframework) Fixed in 2.23.3
- Fix · CNA app-vite (@quasar) Fixed in 3.3.0
- Fix · GHSA-q9mq-245r-4g93 @quasar/app-vite (npm) Fixed in 3.3.0 Advisory →
Timeline
- 2026-10-06 Threatist record created from CVE-2026-106109
- 2026-10-07 CISA SSVC decision points changed
- 2026-10-07 Alias added: GHSA-q9mq-245r-4g93
- 2026-10-07 Fix available: npm/@quasar/[email protected] · GHSA-q9mq-245r-4g93
- 2026-10-07 CVSS score added · GHSA-q9mq-245r-4g93
- 2026-10-07 Weakness changed · GHSA-q9mq-245r-4g93
- 2026-10-07 5 new references · GHSA-q9mq-245r-4g93
References
More quasarframework vulnerabilities
- TI-2026-68624 Regex backtracking on User-Agent header stalls Quasar SSR servers CVSS 4.0HIGH 8.7
- TI-2026-68626 Quasar SSR dev error page leaks environment secrets and enables XSS CVSS 4.0HIGH 7.1
- TI-2026-51731 Quasar Framework: Prototype pollution in Quasar extend() utility CVSS 3.1MEDIUM 5.6
- TI-2026-68622 Cross-site scripting in Quasar Framework SSR meta tags CVSS 3.1CRITICAL 10.0
- TI-2026-68621 Type confusion in quasarframework quasar CVSS 3.1LOW 3.1
- TI-2026-68625 Quasar caches development TLS keys with lax file permissions CVSS 4.0HIGH 8.4
Sources
- CVE-2026-106109 · CVE Program
- CVE-2026-106109 · NVD
- FIRST EPSS
- GHSA-q9mq-245r-4g93 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences