SvelteKit: URL redirection to untrusted site via enhanced form submission
Impact
Applications using enhanced form actions (use:enhance) on routes that accept paths beginning with //, such as catch-all routes, may be vulnerable to an open redirect.
Patches
A fix has been prepared for @sveltejs/kit 3.0.0. Users should upgrade to 3.0.0 or later.
The fix preserves leading double slashes in action paths without generating protocol-relative URLs, restricts non-redirect action navigation to the current origin, and includes the origin when comparing action locations with the current page.
Workarounds
Reject requests whose parsed URL pathname begins with // before route resolution, for example in a reverse proxy or a SvelteKit handle hook.
Alternatively, disable navigation for non-redirect enhanced form results by supplying a custom submission callback:
<form method="POST" use:enhance={() => ({ update }) => update({ navigate: false })}>
<!-- form fields -->
</form>
This applies non-redirect results to the current page instead of navigating to the action location.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| npm package | @sveltejs/kit | < 3.0.0 | 3.0.0 |
References
- https://github.com/sveltejs/kit/security/advisories/GHSA-pfhg-q3qv-9q6r
- https://nvd.nist.gov/vuln/detail/CVE-2026-114060
- https://github.com/sveltejs/kit/commit/91aae3547c6cd2935d79c09a53e27c740100000a
- https://github.com/sveltejs/kit
- https://github.com/sveltejs/kit/releases/tag/@sveltejs/kit@3.0.0
- https://www.vulncheck.com/advisories/sveltekit-before-3.0.0-open-redirect-via-enhanced-form-actions
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N- Weakness (CWE)
CWE-601- Platform
- npm
- Package
@sveltejs/kit- Disclosed
- 23.10.2026
- Updated
- 24.10.2026 00:17
Sources and licenses
OSV / GitHub Advisory Database - GHSA-pfhg-q3qv-9q6r - CC BY 4.0
Vulnerability history: @sveltejs/kit
All published vulnerabilities of this package (npm package), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 19
- First → latest
- 04.2023 10.2026
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- High 6
- Medium 8
- Low 5
Disclosures per year
- 2023: 2
- 2024: 3
- 2025: 1
- 2026: 13
-
SvelteKit: URL redirection to untrusted site via enhanced form submission this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.