CVE-2026-84994: Qwik: Crashing any Qwik Server via Resource thenable

Published Oct 13, 2026
·
Updated

Qwik is a performance-focused JavaScript framework. Prior to @builder.io/qwik 1.20.0 and @qwik.dev/core 2.0.0-beta.37, default server-side qwik-json deserialization causes ResourceSerializer.$fill$ to pass resource.resolved to Promise.resolve without first rejecting attacker-controlled thenables. An unauthenticated request can provide a plain object whose then property is a QRL for an unregistered symbol, causing an orphaned asynchronous rejection that terminates Node.js under its default unhandled-rejection policy. A single request can crash a server, and repeated requests can keep replicas unavailable. This issue is fixed in @builder.io/qwik 1.20.0 and @qwik.dev/core 2.0.0-beta.37.

Affected Software

2 affected components
npm/@builder.io/qwik<1.20.0
npm/@qwik.dev/core<2.0.0-beta.37

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade @builder.io/qwik to a version that resolves this vulnerability.

    Fixed in 1.20.0
  2. Upgrade

    Upgrade @qwik.dev/core to a version that resolves this vulnerability.

    Fixed in 2.0.0-beta.37

Event History

Oct 13, 2026
CVE Published
via MITRE·07:00 PM
Data Sourced
via MITRE·07:00 PM
DescriptionWeakness

Frequently Asked Questions

1

Which deployments are exposed?

Qwik server deployments using versions before @builder.io/qwik 1.20.0 or @qwik.dev/core 2.0.0-beta.37 are affected when using the default server-side qwik-json deserialization behavior.

2

Does an attacker need authentication or code execution to trigger the crash?

No. An unauthenticated attacker can trigger the issue with a single request containing a crafted plain object whose then property is a QRL for an unregistered symbol.

3

What is the operational impact of exploitation?

The crafted input causes an orphaned asynchronous rejection that terminates Node.js under its default unhandled-rejection policy. Repeated requests can keep server replicas unavailable.

4

What should be done to remediate the issue?

Upgrade to @builder.io/qwik 1.20.0 or later, or to @qwik.dev/core 2.0.0-beta.37 or later.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203