Home

Description

Astro is a web framework. Prior to version 10.0.2, the @astrojs/vercel serverless entrypoint reads the x-astro-path header and x_astro_path query parameter to rewrite the internal request path, with no authentication whatsoever. On deployments without Edge Middleware, this lets anyone bypass Vercel's platform-level path restrictions entirely. The override preserves the original HTTP method and body, so this isn't limited to GET. POST, PUT, DELETE all land on the rewritten path. A Firewall rule blocking /admin/* does nothing when the request comes in as POST /api/health?x_astro_path=/admin/delete-user. This issue has been patched in version 10.0.2.

PUBLISHED Reserved 2026-03-23 | Published 2026-03-24 | Updated 2026-03-24 | Assigner GitHub_M




MEDIUM: 6.5CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N

Problem types

CWE-441: Unintended Proxy or Intermediary ('Confused Deputy')

CWE-862: Missing Authorization

Product status

< 10.0.2
affected

References

github.com/.../astro/security/advisories/GHSA-mr6q-rp88-fx84

github.com/withastro/astro/pull/15959

github.com/...ommit/335a204161f5a7293c128db570901d4f8639c6ed

github.com/...stro/astro/releases/tag/@astrojs/vercel@10.0.2

cve.org (CVE-2026-33768)

nvd.nist.gov (CVE-2026-33768)

Download JSON