CVE-2024-23641High· 7.5▾ TwilightSending a GET or HEAD request with a body crashes SvelteKit
▾ Twilight zone — High severity, or a signal on a lesser flaw
impact 41.3 · likelihood 0.2 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Oct 18.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via GHSA
Last analysed / modified upstream
0.8%
In SvelteKit 2 sending a GET request with a body eg {} to a SvelteKit app in preview or with adapter-node throws Request with GET/HEAD method cannot have body. and crashes the app.
node:internal/deps/undici/undici:6066
throw new TypeError("Request with GET/HEAD method cannot have body.");
^
TypeError: Request with GET/HEAD method cannot have body.
at new Request (node:internal/deps/undici/undici:6066:17)
at getRequest (file:///C:/Users/admin/Desktop/reproduction/node_modules/@sveltejs/kit/src/exports/node/index.js:107:9)
at file:///C:/Users/admin/Desktop/reproduction/node_modules/@sveltejs/kit/src/exports/vite/preview/index.js:181:26
at call (file:///C:/Users/admin/Desktop/reproduction/node_modules/vite/dist/node/chunks/dep-9A4-l-43.js:44795:7)
at next (file:///C:/Users/admin/Desktop/reproduction/node_modules/vite/dist/node/chunks/dep-9A4-l-43.js:44739:5)
at file:///C:/Users/admin/Desktop/reproduction/node_modules/@sveltejs/kit/src/exports/vite/preview/index.js:172:6
at call (file:///C:/Users/admin/Desktop/reproduction/node_modules/vite/dist/node/chunks/dep-9A4-l-43.js:44795:7)
at next (file:///C:/Users/admin/Desktop/reproduction/node_modules/vite/dist/node/chunks/dep-9A4-l-43.js:44739:5)
at file:///C:/Users/admin/Desktop/reproduction/node_modules/@sveltejs/kit/src/exports/vite/preview/index.js:211:27
at call (file:///C:/Users/admin/Desktop/reproduction/node_modules/vite/dist/node/chunks/dep-9A4-l-43.js:44795:7)
Node.js v20.11.0
TRACE requests will also cause the app to crash. Prerendered pages and SvelteKit 1 apps are not affected.
First do a fresh install of SvelteKit 2 with the example app. Typescript.
npm run buildnpm run previewDenial of Service for apps using adapter-node
@sveltejs/kit >= 2.0.0, < 2.4.3@sveltejs/adapter-node >= 2.0.0, < 2.1.2@sveltejs/adapter-node >= 3.0.0, < 3.0.3@sveltejs/adapter-node = 4.0.0Upgrade to a patched release:
@sveltejs/kit 2.4.3@sveltejs/adapter-node 2.1.2@sveltejs/adapter-node 3.0.3@sveltejs/adapter-node 4.0.1Connected by shared product, vendor, weakness, or advisory.
GHSA-85pr-xr59-r75hLow· 4.7Duplicate Advisory: SvelteKit before 3.0.0 XSS via Cache-Control Header in Prerendered Pages
GHSA-pvhg-7v4p-f5q9Low· 4.7Duplicate Advisory: SvelteKit before 3.0.0 Open Redirect via Enhanced Form Actions
CVE-2026-114060Low· 4.7SvelteKit: URL redirection to untrusted site via enhanced form submission
CVE-2023-29003High· 8.8SvelteKit vulnerable to Cross-Site Request Forgery
CVE-2023-29008High· 8.8SvelteKit framework has Insufficient CSRF protection for CORS requests
CVE-2024-53262Low· 4.2@sveltejs/kit has unescaped error message included on error page