CVE-2026-25545 Astro has Full-Read SSRF in error rendering via Host: header injection
Attackers can exploit SSRF in Astro's error rendering via Host header injection to read internal network data and cloud metadata.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-25545?
CVE-2026-25545 is a medium-severity server-side request forgery vulnerability in withastro astro, published on 24 Feb 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Astro is a web framework. Prior to version 9.5.4, Server-Side Rendered pages that return an error with a prerendered custom error page (eg. `404.astro` or `500.astro`) are vulnerable to SSRF. If the `Host:` header is changed to an attacker's server, it will be fetched on `/500.html` and they can redirect this to any internal URL to read the response body through the first request. An attacker who can access the application without `Host:` header validation (eg. through finding the origin IP behind a proxy, or just by default) can fetch their own server to redirect to any internal IP. With this they can fetch cloud metadata IPs and interact with services in the internal network or localhost. For this to be vulnerable, a common feature needs to be used, with direct access to the server (no proxies). Version 9.5.4 fixes the issue.
Weakness: CWE-918
Which versions are affected by CVE-2026-25545?
2 open source packages ship an affected version, including @astrojs/node. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
@astrojs/node npm | All versions | 9.5.4 |
@astrojs/node npm | All versions | 9.5.4 |
Products include Astro \@Astrojs\/Node.
How do I fix CVE-2026-25545?
Upgrade @astrojs/node to 9.5.4 or later.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2026-25545 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-25545 exists.
Public exploit code: 1 Nuclei template.
Other vulnerabilities in withastro astro
- CVE-2026-27829 Astro is vulnerable to SSRF due to missing allowlist enforcement in remote image inferSize
- CVE-2026-29772 Astro: Memory exhaustion DoS due to missing request body size limit in Server Islands
- CVE-2026-27729 Astro has memory exhaustion DoS due to missing request body size limit in Server Actions
Sources
Also known as GHSA-qq67-mvv5-fw3g.