Update dependency fastify to ^4.29.1 [SECURITY]#9
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
Conversation
36299bf to
96f5a9c
Compare
96f5a9c to
7bf4ecf
Compare
7bf4ecf to
d6805a9
Compare
d6805a9 to
013a6e1
Compare
013a6e1 to
763748a
Compare
763748a to
cb8bd2c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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:
^4.17.0→^4.29.1GitHub Vulnerability Alerts
CVE-2026-25223
Impact
A validation bypass vulnerability exists in Fastify where request body validation schemas specified by Content-Type can be completely circumvented. By appending a tab character (
\t) followed by arbitrary content to the Content-Type header, attackers can bypass body validation while the server still processes the body as the original content type.For example, a request with
Content-Type: application/json\tawill bypass JSON schema validation but still be parsed as JSON.This vulnerability affects all Fastify users who rely on Content-Type-based body validation schemas to enforce data integrity or security constraints. The concrete impact depends on the handler implementation and the level of trust placed in the validated request body, but at the library level, this allows complete bypass of body validation for any handler using Content-Type-discriminated schemas.
This issue is a regression or missed edge case from the fix for a previously reported vulnerability.
Patches
This vulnerability has been patched in Fastify v5.7.2. All users should upgrade to this version or later immediately.
Workarounds
If upgrading is not immediately possible, user can implement a custom
onRequesthook to reject requests containing tab characters in the Content-Type header:Resources
CVE-2026-3635
Summary
When
trustProxyis configured with a restrictive trust function (e.g., a specific IP liketrustProxy: '10.0.0.1', a subnet, a hop count, or a custom function), therequest.protocolandrequest.hostgetters readX-Forwarded-ProtoandX-Forwarded-Hostheaders from any connection — including connections from untrusted IPs. This allows an attacker connecting directly to Fastify (bypassing the proxy) to spoof both the protocol and host seen by the application.Affected Versions
fastify <= 5.8.2
Impact
Applications using
request.protocolorrequest.hostfor security decisions (HTTPS enforcement, secure cookie flags, CSRF origin checks, URL construction, host-based routing) are affected whentrustProxyis configured with a restrictive trust function.When
trustProxy: true(trust everything), bothhostandprotocoltrust all forwarded headers — this is expected behavior. The vulnerability only manifests with restrictive trust configurations.Release Notes
fastify/fastify (fastify)
v4.29.1Compare Source
Fix for "Invalid content-type parsing could lead to validation bypass" and CVE-2025-32442.
Full Changelog: fastify/fastify@v4.29.0...v4.29.1
v4.29.0Compare Source
What's Changed
configtype in RouteShorthandOptions by @bastienmenis in #5527Responsereplies by @github-actions in #5629thisto instance in onclose by @github-actions in #5679New Contributors
Full Changelog: fastify/fastify@v4.28.1...v4.29.0
v4.28.1Compare Source
What's Changed
Full Changelog: fastify/fastify@v4.28.0...v4.28.1
v4.28.0Compare Source
What's Changed
reply.redirect()signature (#5483) by @gurgunday in #5484Full Changelog: fastify/fastify@v4.27.0...v4.28.0
v4.27.0Compare Source
What's Changed
remove-labeljob uses the wrong repo by @gurgunday in #5415reply.getSerializationFunctioncan returnundefinedby @remidewitte in #5384abortedproperty by @Fdawgs in #5438New Contributors
Full Changelog: fastify/fastify@v4.26.2...v4.27.0
v4.26.2Compare Source
What's Changed
New Contributors
Full Changelog: fastify/fastify@v4.26.1...v4.26.2
v4.26.1Compare Source
What's Changed
New Contributors
Full Changelog: fastify/fastify@v4.26.0...v4.26.1
v4.26.0Compare Source
What's Changed
fastify.setErrorHandler()by @codershiba in #5265Reply#getResponseTime()in favour ofReply#elapsedTimeby @codershiba in #5263www.fromfastify.devurls by @Fdawgs in #5270onListenhooks are called when they should be by @bienzaaron in #5273setErrorHandler()by @codershiba in #5269.githubfiles by @Fdawgs in #5268New Contributors
Full Changelog: fastify/fastify@v4.25.2...v4.26.0
v4.25.2Compare Source
What's Changed
npm run test:watchby @domdomegg in #5221New Contributors
Full Changelog: fastify/fastify@v4.25.1...v4.25.2
v4.25.1Compare Source
What's Changed
Full Changelog: fastify/fastify@v4.25.0...v4.25.1
v4.25.0Compare Source
What's Changed
typeofundefined check by @Fdawgs in #5127.iodomain with.devby @Fdawgs in #5129RouteShorthandOptionswithout breakingrequestandreplytypes by @bienzaaron in #5147afterandreadymethod by @nokazn in #5191New Contributors
Full Changelog: fastify/fastify@v4.24.3...v4.25.0
v4.24.3Compare Source
What's Changed
use strictdirectives by @Fdawgs in #5106Full Changelog: fastify/fastify@v4.24.2...v4.24.3
v4.24.2Compare Source
What's Changed
Symbol.asyncDisposetype is not available. by @arthurfiorette in #5096Full Changelog: fastify/fastify@v4.24.1...v4.24.2
v4.24.1Compare Source
What's Changed
Full Changelog: fastify/fastify@v4.24.0...v4.24.1
v4.24.0Compare Source
What's Changed
Symbol.asyncDisposeto improve DX in short lived servers. by @arthurfiorette in #5082New Contributors
Full Changelog: fastify/fastify@v4.23.2...v4.24.0
v4.23.2Compare Source
What's Changed
Full Changelog: fastify/fastify@v4.23.1...v4.23.2
v4.23.1Compare Source
What's Changed
Full Changelog: fastify/fastify@v4.23.0...v4.23.1
v4.23.0Compare Source
What's Changed
node:prefix to bypass require.cache call for builtins by @Fdawgs in #5026New Contributors
**Full Change
Configuration
📅 Schedule: Branch creation - "" in timezone Europe/Stockholm, Automerge - At any time (no schedule defined).
🚦 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.