Read the docs

Quasar SSR dev error page leaks environment secrets and enables XSS

Priority MEDIUM 64CWE-497Published · Updated

Key facts

Attack vector
Adjacent network
Privileges required
None
User interaction
Passive
Attack complexity
High
Attack requirements
Present
Impact type
Information disclosure, Cross-site scripting
Confidentiality · integrity · availability
High · Low · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-497 and CWE-79.

Summary

Quasar Framework before 2.23.3, @quasar/render-ssr-error before 2.2.4 and @quasar/app-vite before 3.3.0 are affected. The SSR and SSG development error page returns process.env, request headers and cookies, and the development server listens on all interfaces by default. A network-adjacent client that reaches a render failure can obtain shell environment secrets. The renderer escapes only one exact lowercase script closing tag, so case variants and closing-tag delimiter variants can inject markup that runs in a developer browser when the payload accompanies that developer's request.

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. Prior to @quasar/render-ssr-error 2.2.4 and @quasar/app-vite 3.3.0, renderSSRError() in utils/render-ssr-error/src/index.js used diagnostic data from utils/render-ssr-error/src/env.js to serialize process.env, request headers, and cookies into the HTTP page returned by serve.devError(), while the development server listened on all interfaces by default. Any network-adjacent client that reaches an SSR or SSG render failure through this development-only error path can obtain shell environment secrets. The renderer escaped only one exact lowercase script closing-tag spelling, so case variants and valid closing-tag delimiter variants in reflected diagnostic data could terminate the script element and inject markup; executing the injected code in a developer browser additionally requires the payload to accompany that developer's request. This issue is fixed in @quasar/render-ssr-error 2.2.4 and @quasar/app-vite 3.3.0.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00276 20th percentileScored 2026-11-07
Fix Fixed quasar (quasarframework): 2.23.3render-ssr-error (@quasar): 2.2.4+3 more products

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
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

VendorProductAffected versionsFixed inStatusSource
quasarframeworkquasarbefore 2.23.32.23.3Patch availableCNA
@quasarrender-ssr-errorbefore 2.2.42.2.4Patch availableCNA
@quasarapp-vitebefore 3.3.03.3.0Patch availableCNA
—@quasar/render-ssr-error (npm)before 2.2.42.2.4Patch availableGHSA-r5mf-4r5x-q78f
—@quasar/app-vite (npm)before 3.3.03.3.0Patch availableGHSA-r5mf-4r5x-q78f
  • quasar Vendorquasarframework Affected before 2.23.3 Fixed in 2.23.3 Patch available CNA
  • render-ssr-error Vendor@quasar Affected before 2.2.4 Fixed in 2.2.4 Patch available CNA
  • app-vite Vendor@quasar Affected before 3.3.0 Fixed in 3.3.0 Patch available CNA
  • @quasar/render-ssr-error (npm) Vendor— Affected before 2.2.4 Fixed in 2.2.4 Patch available GHSA-r5mf-4r5x-q78f
  • @quasar/app-vite (npm) Vendor— Affected before 3.3.0 Fixed in 3.3.0 Patch available GHSA-r5mf-4r5x-q78f

Remediation

Upgrade @quasar/render-ssr-error to 2.2.4 and @quasar/app-vite to 3.3.0. 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 render-ssr-error (@quasar) Fixed in 2.2.4
  • Fix · CNA app-vite (@quasar) Fixed in 3.3.0
  • Fix · GHSA-r5mf-4r5x-q78f @quasar/render-ssr-error (npm) Fixed in 2.2.4 Advisory →
  • Fix · GHSA-r5mf-4r5x-q78f @quasar/app-vite (npm) Fixed in 3.3.0 Advisory →

Timeline

  1. 2026-10-06 Threatist record created from CVE-2026-106106
  2. 2026-10-07 Alias added: GHSA-r5mf-4r5x-q78f
  3. 2026-10-07 Fix available: npm/@quasar/[email protected], npm/@quasar/[email protected] · GHSA-r5mf-4r5x-q78f
  4. 2026-10-07 CVSS score added · GHSA-r5mf-4r5x-q78f
  5. 2026-10-07 Weakness changed · GHSA-r5mf-4r5x-q78f
  6. 2026-10-07 5 new references · GHSA-r5mf-4r5x-q78f

References

  • TI-2026-68624 Regex backtracking on User-Agent header stalls Quasar SSR servers CVSS 4.0HIGH 8.7
  • 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
  • TI-2026-68627 Unsafe nonce interpolation in Quasar app-vite SSR and SSG output CVSS 4.0HIGH 8.3
See all 9 →

Sources