CVE-2026-45028: Astro cross-component replay in server islands

CVE-2026-45028 · Severity: medium · CVSS 6.1 · Published 2026-05-13

Astro is a popular web framework used to build fast, content-focused websites. A vulnerability in its "server islands" feature could allow an attacker to manipulate how data is displayed on a page, potentially leading to malicious scripts being executed in a user's browser. While this could lead to unauthorized actions or data theft, the specific conditions required for a successful attack are rare in typical production environments.

Technologies: astro (npm). Vendors: npm.

Quick answers

Is CVE-2026-45028 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-45028 being exploited in the wild.
How severe is CVE-2026-45028?
Medium severity, with a CVSS score of 6.1, published 13 May 2026.
Which products and versions are affected?
astro (npm) < 6.1.10, SEMVER:introduced=0,fixed=6.1.10.
Is there a fix for CVE-2026-45028?
Yes. astro (npm): upgrade to 6.1.10 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-45028 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-45028?
Check whether you run astro (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

  • astro (npm): upgrade to 6.1.10 or later
    npm install astro@6.1.10

Technical details

Astro versions prior to 6.1.10 used AES-GCM to encrypt server island parameters (props and slots) but failed to bind the ciphertext to a specific component or parameter type. This lack of cryptographic binding allows an attacker to perform a replay attack, taking an encrypted 'props' value (which may contain user-controlled data) and submitting it as a 'slots' value. Because slots are rendered as raw, unescaped HTML, this can result in Cross-Site Scripting (XSS) if a prop and slot share the same key name across different components. The fix introduces Authenticated Additional Data (AAD) to the AES-GCM process, binding the ciphertext to the specific component name and parameter type.

Affected products

  • withastro astro < 6.1.10

Identifiers

  • CVE-2026-45028
  • GHSA-xr5h-phrj-8vxv

Timeline

  • 2026-05-07: patched: Fix published in version 6.1.10
  • 2026-05-13: disclosed: GitHub Advisory published

References

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