CVE-2026-102984: Astro Node adapter denial of service in Host header parsing

CVE-2026-102984 · Severity: high · CVSS 4 · Published 2026-09-30

Astro is a web framework for building content-driven websites. The Node.js adapter can crash when it receives HTTP requests with malformed port numbers in the Host header (such as example.com:65536). In the default configuration, the server returns a 500 error and stays running; however, when staticHeaders is enabled, the server process crashes completely, causing an outage. Proxies and CDNs typically filter these malformed headers before they reach the origin server.

Technologies: @astrojs/node (npm). Vendors: Astro, npm.

Quick answers

Is CVE-2026-102984 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-102984 being exploited in the wild.
How severe is CVE-2026-102984?
High severity, with a CVSS score of 4, published 30 September 2026.
Which products and versions are affected?
Astro @Astrojs/Node prior to 11.1.3; @astrojs/node (npm) <= 11.1.2, SEMVER:introduced=0,fixed=11.1.3.
Is there a fix for CVE-2026-102984?
Yes. @astrojs/node (npm): upgrade to 11.1.3 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-102984 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-102984?
Check whether you run Astro @Astrojs/Node or @astrojs/node (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • @astrojs/node (npm): upgrade to 11.1.3 or later
    npm install @astrojs/node@11.1.3

Technical details

The @astrojs/node adapter constructs the request URL from the Host header without properly validating the port number. When a malformed port is encountered, the URL becomes invalid and throws a TypeError; the error recovery path reuses the same malformed host and throws again. The vulnerability affects availability only—no data exposure or code execution is possible. Fixed in version 11.1.3 by implementing a degradation strategy: if the incoming Host cannot be parsed, the request URL falls back to a server-controlled host.

Affected products

  • Astro @astrojs/node prior to 11.1.3

Identifiers

  • CVE-2026-102984
  • GHSA-qh8j-hqjv-7m4x

Timeline

  • 2026-08-13: patched: Fix merged in commit 2066f39
  • 2026-09-30: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.