chore(deps): update dependency @sveltejs/kit to v2.20.6 [security] #82
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.5.28
->2.20.6
GitHub Vulnerability Alerts
CVE-2024-53262
Summary
The static error.html template for errors contains placeholders that are replaced without escaping the content first.
Details
From https://kit.svelte.dev/docs/errors:
This leads to possible injection if an app explicitly creates an error with a message that contains user controlled content that ends up being something like this inside a server handle function:
Uncaught errors cannot be exploited like this, as they always render the message "Internal error".
Escaping the message string in the function that creates the html output can be done to improve safety for applications that are using custom errors on the server.
PoC
None provided
Impact
Only applications where user provided input is used in the
Error
message will be vulnerable, so the vast majority of applications will not be vulnerableCVE-2024-53261
Summary
"Unsanitized input from the request URL flows into
end
, where it is used to render an HTML page returned to the user. This may result in a Cross-Site Scripting attack (XSS)."Details
Source of potentially tainted data is in
packages/kit/src/exports/vite/dev/index.js
, line 437. This potentially tainted data is passed through a number of steps (which I could detail if you'd like) all the way down to line 91 inpackages/kit/src/exports/vite/utils.js
, which performs an operation that Snyk believes an attacker shouldn't be allowed to manipulate.Another source of potentially tainted data (according to Snyk) comes from
packages/kit/src/exports/vite/utils.js
, line 30, col 30 (i.e., theurl
property ofreq
). This potentially tainted data is passed through a number of steps (which I could detail if you'd like) all the way down line 91 inpackages/kit/src/exports/vite/utils.js
, which performs an operation that Snyk believes an attacker shouldn't be allowed to manipulate.PoC
Not provided
Impact
Little to none. The Vite development is not exposed to the network by default. And even if someone were able to trick a developer into executing an XSS against themselves, a development database should not have any sensitive data.
CVE-2025-32388
Summary
Unsanitized search param names cause XSS vulnerability. You are affected if you iterate over all entries of
event.url.searchParams
inside a serverload
function. Attackers can exploit it by crafting a malicious URL and getting a user to click a link with said URL.Details
SvelteKit tracks which parameters in
event.url.searchParams
are read inside serverload
functions. If the application iterates over the these parameters, theuses.search_params
array included in the boot script (embedded in the server-rendered HTML) will have any search param name included in unsanitized form.packages/kit/src/runtime/server/utils.js:150
has thestringify_uses(node)
function which prints these out.Reproduction
In a
+page.server.js
or+layout.server.js
:If a user visits the page in question via a link containing
?</script/><script>window.pwned%3D1</script/>
, the</script>
will be included verbatim in the payload, causing the embedded script to be executed.It is not necessary to return the parameter value from
load
or render it in the page, only to read it (which causes it to be tracked as a dependency) whileload
is running.Impact
Any application that iterates over all values in
event.url.searchParams
in aload
function in+page.server.js
or+layout.server.js
(directly or indirectly) is vulnerable to XSS.Release Notes
sveltejs/kit (@sveltejs/kit)
v2.20.6
Compare Source
Patch Changes
d3300c6a67908590266c363dba7b0835d9a194cf
)v2.20.5
Compare Source
Patch Changes
allow
HandleServerError
hook to accessgetRequestEvent
(#13666)fix: prevent Rollup warnings for undefined hooks (#13687)
v2.20.4
Compare Source
Patch Changes
v2.20.3
Compare Source
Patch Changes
afterNavigate
once on app start when SSR is disabled (#13593)v2.20.2
Compare Source
Patch Changes
v2.20.1
Compare Source
Patch Changes
v2.20.0
Compare Source
Minor Changes
getRequestEvent
to$app/server
(#13582)v2.19.2
Compare Source
Patch Changes
v2.19.1
Compare Source
Patch Changes
v2.19.0
Compare Source
Minor Changes
fetch
toreroute
(#13549)Patch Changes
v2.18.0
Compare Source
Minor Changes
feat: allow async
reroute
(#13520)feat: provide
normalizeUrl
helper (#13539)Patch Changes
fix: correct navigation history with hash router and ensure load functions are rerun on user changes to URL hash (#13492)
fix: include universal load assets as server assets (#13531)
fix: Include root layout and error nodes even when apps have only prerendered pages (#13522)
fix: correctly preload data on
mousedown
/touchstart
if code was preloaded on hover (#13530)v2.17.3
Compare Source
Patch Changes
fix: avoid simulated CORS errors with non-HTTP URLs (#13493)
fix: correctly preload links on
mousedown
/touchstart
(#13486)fix: load CSS when using server-side route resolution (#13498)
fix: correctly find shared entry-point CSS files during inlining (#13431)
v2.17.2
Compare Source
Patch Changes
fix: add promise return type to the
enhance
action callback (#13420)fix: change server-side route resolution endpoint (#13461)
v2.17.1
Compare Source
Patch Changes
paths.relative
option isfalse
(#13412)v2.17.0
Compare Source
Minor Changes
feat: validate values for
cache-control
andcontent-type
headers in dev mode (#13114)feat: support server-side route resolution (#13379)
Patch Changes
chore: don't error during development when using
use:enhance
with+server
as some third party libraries make it possible to POST forms to it (#13397)fix: skip hooks for server fetch to prerendered routes (#13377)
fix: ignore non-entry-point CSS files during inlining (#13395)
fix: default server fetch to use prerendered paths (#13377)
v2.16.1
Compare Source
Patch Changes
fix: avoid overwriting headers for sub-requests made while loading the error page (#13341)
fix: correctly resolve index file entrypoints such as
src/service-worker/index.js
(#13354)fix: correctly handle relative anchors when using the hash router (#13356)
v2.16.0
Compare Source
Minor Changes
feat: add ability to invalidate a custom identifier on
goto()
(#13256)feat: remove the
postinstall
script to support pnpm 10 (#13304)NOTE: users should add
"prepare": "svelte-kit sync
" to theirpackage.json
in order to avoid the following warning upon first running Vite:feat: provide
PageProps
andLayoutProps
types (#13308)Patch Changes
perf: shorten chunk file names (#13003)
fix: strip internal data before passing URL to
reroute
(#13092)fix: support absolute URLs and reroutes with
data-sveltekit-preload-code="viewport"
(#12217)fix: use current
window.fetch
for server load fetch requests (#13315)fix: resolve symlinks when handling routes (#12740)
fix: prevent infinite reload when using the hash router and previewing
/index.html
(#13296)fix: service worker base path in dev mode (#12577)
chore: error during development when using
use:enhance
with+server
(#13197)chore: add most common status codes to
redirect()
JS documentation (#13301)fix: correctly link to assets inlined by the
inlineStyleThreshold
option (#13068)fix: fall back to importing dynamic dependencies relative to SvelteKit package (#12532)
fix: use arrow function types over bound funcs (#12955)
fix: correctly navigate when hash router is enabled and the browser encodes extra hashes (#13321)
v2.15.3
Compare Source
Patch Changes
fix: fix race-condition when not using SSR when pressing back before initial load (#12925)
fix: remove ":$" from virtual module ids to allow dev server to work with proxies (#12157)
fix: upgrade esm-env to remove warning when NODE_ENV is not set (#13291)
fix: handle
Redirect
thrown from root layout load function when client-side navigating to a non-existent page (#12005)fix: make param matchers generated type import end with
.js
(#13286)v2.15.2
Compare Source
Patch Changes
fix: correctly notify page store subscribers (#13205)
fix: prerender data when there is no server load but the
trailingSlash
option is set from the server (#13262)fix: correctly remove navigation callbacks when returning function in onNavigate (#13241)
v2.15.1
Compare Source
Patch Changes
fix: add CSP hashes/nonces to inline styles when using
bundleStrategy: 'inline'
(#13232)fix: silence dev/prod warning during sync (#13244)
v2.15.0
Compare Source
Minor Changes
bundleStrategy: 'inline'
option (#13193)v2.14.1
Compare Source
Patch Changes
v2.14.0
Compare Source
Minor Changes
Patch Changes
goto(...)
, to handle case where URL is mutated (#13196)v2.13.0
Compare Source
Minor Changes
bundleStrategy: 'split' | 'single'
option (#13173)v2.12.2
Compare Source
Patch Changes
fix: correctly resolve no hooks file when a similarly named directory exists (#13188)
fix: correctly resolve
$app/state
on the server with Vite 5 (#13192)v2.12.1
Compare Source
Patch Changes
navigating.current.<x>
withnavigating.<x>
(#13174)v2.12.0
Compare Source
Minor Changes
$app/state
module (#13140)Patch Changes
v2.11.1
Compare Source
Patch Changes
build.minify
setting when building the service worker (#13143)v2.11.0
Compare Source
Minor Changes
Patch Changes
v2.10.1
Compare Source
Patch Changes
init
hook fromget_hooks
(#13136)v2.10.0
Compare Source
Minor Changes
init
hook (#13103)Patch Changes
hooks.js
from overwriting hooks fromhooks.server.js
(#13104)v2.9.1
Compare Source
Patch Changes
v2.9.0
Compare Source
Minor Changes
Patch Changes
v2.8.5
Compare Source
Patch Changes
v2.8.4
Compare Source
Patch Changes
v2.8.3
Compare Source
Patch Changes
fix: ensure error messages are escaped (#13050)
fix: escape values included in dev 404 page (#13039)
v2.8.2
Compare Source
Patch Changes
fix: prevent duplicate fetch request when using Request with load function's fetch (#13023)
fix: do not override default cookie decoder to allow users to override the
cookie
library version (#13037)v2.8.1
Compare Source
Patch Changes
fix: only add nonce to
script-src-elem
,style-src-attr
andstyle-src-elem
CSP directives whenunsafe-inline
is not present (#11613)fix: support HTTP/2 in dev and production. Revert the changes from #12907 to downgrade HTTP/2 to TLS as now being unnecessary (#12989)
v2.8.0
Compare Source
Minor Changes
ActionFailure
objects (#12878)v2.7.7
Compare Source
Patch Changes
v2.7.6
Compare Source
Patch Changes
v2.7.5
Compare Source
Patch Changes
fix: warn on invalid cookie name characters (#12806)
fix: when using
@vitejs/plugin-basic-ssl
, set a no-op proxy config to downgrade from HTTP/2 to TLS sinceundici
does not yet enable HTTP/2 by default (#12907)v2.7.4
Compare Source
Patch Changes
fix: ensure element is focused after subsequent clicks of the same hash link (#12866)
fix: avoid preload if event default was prevented for
touchstart
andmousedown
events (#12887)fix: avoid reloading behaviour for hash links with data-sveltekit-reload if the hash is on the same page (#12866)
v2.7.3
Compare Source
Patch Changes
fix: include importer in illegal import error message (#12820)
fix: don't try reading assets directly that aren't present (#12876)
fix: decode non-latin characters when previewing prerendered pages (#12874)
fix: better error message when a
Result
is returned from a form action (#12829)docs: update URLs for new svelte.dev site (#12857)
v2.7.2
Compare Source
Patch Changes
v2.7.1
Compare Source
Patch Changes
chore: upgrade to sirv 3.0 (#12796)
fix: warn when form action responses are lost because SSR is off (#12063)
v2.7.0
Compare Source
Minor Changes
Patch Changes
fix: correctly handle relative paths when fetching assets on the server (#12113)
fix: decode non ASCII anchor hashes when scrolling into view (#12699)
fix: page response missing CSP and Link headers when return promise in
load
(#12418)v2.6.4
Compare Source
Patch Changes
fix: only preload links that have a different URL than the current page (#12773)
fix: revert change to replace version in generateBundle (#12779)
fix: catch stack trace fixing errors thrown in web containers (#12775)
fix: use absolute links in JSDoc comments (#12772)
v2.6.3
Compare Source
Patch Changes
fix: ensure a changing
version
doesn't affect the hashes for chunks without any actual code changes (#12700)fix: prevent crash when logging URL search params in a server load function (#12763)
chore: revert update dependency cookie to ^0.7.0 (#12767)
v2.6.2
Compare Source
Patch Changes
v2.6.1
Compare Source
Patch Changes
v2.6.0
Compare Source
Minor Changes
load
functions (#12716)Patch Changes
<form target="_blank">
and ` submissions (#11936)Configuration
📅 Schedule: Branch creation - "" in timezone Europe/Vienna, Automerge - "* 0-3 * * *" in timezone Europe/Vienna.
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.