GHSA-29g2-3rmr-qm68 CVE-2026-66062
SvelteKit: ReDoS (O(n^2)) in content negotiation — unauthenticated DoS via the Accept header
- Severity
- 5.3 / 10
- Medium · CVSS 3.1
- Exploit chance (EPSS)
- 0.51%
- Chance of exploitation in the next 30 days. Higher than 43.26% of scored vulnerabilities.
- Known exploited
- No
- Not in CISA's catalog
- Weakness
- CWE-1333 Inefficient Regular Expression Complexity
- Fix
2.70.2- Upgrade @sveltejs/kit to this version or later
Description
Impact
SvelteKit is vulnerable to remote CPU-exhaustion DoS attacks via specifically-crafted Accept headers. The impact is mitigated by default header length limits on most platforms, but in the case of raised or absent limits a denial of service is possible.
Patches
The vulnerability is patched in @sveltejs/kit version 2.70.2.
Affected versions
npm
| Package | Vulnerable | Fixed in |
|---|---|---|
| @sveltejs/kit | < 2.70.2 |
2.70.2 |
How to fix
Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.
@sveltejs/kit npm → 2.70.2
- npm
npm install @sveltejs/kit@2.70.2- yarn
yarn add @sveltejs/kit@2.70.2- pnpm
pnpm add @sveltejs/kit@2.70.2
Severity breakdown
CVSS 3.1 5.3
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- Low
Weakness
CWE-1333: Inefficient Regular Expression Complexity
The product uses a regular expression with a worst-case computational complexity that is inefficient and possibly exponential.
How to prevent it
- Architecture and Design: Use regular expressions that do not support backtracking, e.g. by removing nested quantifiers.
- System Configuration: Set backtracking limits in the configuration of the regular expression implementation, such as PHP's pcre.backtrack_limit. Also consider limits on execution time for the process.
- Implementation: Do not use regular expressions with untrusted input. If regular expressions must be used, avoid using backtracking in the expression.
- Implementation: Limit the length of the input that the regular expression will process.
References
Packages
Other links
Timeline
- Published
- Last updated by the source
- Latest EPSS score
Related advisories
| Advisory | Severity | Why it's related |
|---|---|---|
| GHSA-27mw-82g8-phjj SvelteKit : XSS via untrusted cache-control header in prerendered page | Low | Also affects @sveltejs/kit |
| GHSA-pfhg-q3qv-9q6r SvelteKit: URL redirection to untrusted site via enhanced form submission | Medium | Also affects @sveltejs/kit |
| GHSA-866w-xmhq-wj7x SvelteKit: Prototype pollution in file input deletion path in remote-function forms | Medium | Also affects @sveltejs/kit |
| GHSA-wqjv-9729-c5q2 SvelteKit: Big remote form function payloads can cause Node process to crash | Medium | Also affects @sveltejs/kit |
| GHSA-hgv7-v322-mmgr @sveltejs/kit: `query.batch` cross-talk | Medium | Also affects @sveltejs/kit |
| GHSA-3f6h-2hrp-w5wx @sveltejs/kit: Unvalidated redirect in handle hook causes Denial-of-Service | High | Also affects @sveltejs/kit |
| GHSA-2crg-3p73-43xp @sveltejs/adapter-node has a BODY_SIZE_LIMIT bypass | High | Also affects @sveltejs/kit |
| GHSA-fpg4-jhqr-589c SvelteKit has deserialization expansion in unvalidated `form` remote function leading to Denial of Service (experimental only) | High | Also affects @sveltejs/kit |
MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.
Check your repos with MergeHarbor