---
id: CVE-2026-73423
title: Astro is a web framework for content-driven websites
summary: >-
  Astro is a web framework for content-driven websites. From 7.0.0 until 7.0.6,
  the composable astro/hono pipeline installs security.checkOrigin only through
  the middleware() primitive, while actions() and pages() can dispatch to user
  code…
severity: none
cwe:
  - CWE-352
published: '2026-08-12'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T21:02:22.660'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-73423'
references:
  - url: >-
      https://github.com/withastro/astro/commit/0b30b35f864310bee8485c952d1877e82e2b9b1a
    label: security-advisories@github.com
  - url: 'https://github.com/withastro/astro/pull/17250'
    label: security-advisories@github.com
  - url: 'https://github.com/withastro/astro/releases/tag/astro@7.0.6'
    label: security-advisories@github.com
  - url: 'https://github.com/withastro/astro/security/advisories/GHSA-8mv7-9c27-98vc'
    label: security-advisories@github.com
tags:
  - nvd
epss: 0.00264
epssPercentile: 0.16307
ingestedAt: '2026-09-09T21:22:45.532Z'
---

## Overview

Astro is a web framework for content-driven websites. From 7.0.0 until 7.0.6, the composable astro/hono pipeline installs security.checkOrigin only through the middleware() primitive, while actions() and pages() can dispatch to user code independently. Mounting actions() before middleware(), as in the examples/advanced-routing example and Cloudflare Hono documentation, allows cross-origin form-encoded action requests to execute before the origin check, and using pages() without middleware() drops the check for on-demand endpoints and pages. The flaw enables blind write-only cross-site request forgery using the victim's cookies against ActionHandler.handle and PagesHandler.handleWithErrorFallback when manifest.checkOrigin is enabled; the attacker can trigger a state-mutating action or endpoint handler but cannot read the cross-origin response. The default non-composable astro() pipeline is not affected. This issue is fixed in version 7.0.6.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
