chore(deps): update dependency undici@<5.29.0 to v7 [security]#121
Closed
renovate[bot] wants to merge 1 commit intodevfrom
Closed
chore(deps): update dependency undici@<5.29.0 to v7 [security]#121renovate[bot] wants to merge 1 commit intodevfrom
renovate[bot] wants to merge 1 commit intodevfrom
Conversation
bec59ab to
659178b
Compare
659178b to
c5aaa06
Compare
c5aaa06 to
d011ce5
Compare
d011ce5 to
692bfe2
Compare
692bfe2 to
13f4bcf
Compare
13f4bcf to
9da710e
Compare
9da710e to
f8a94b3
Compare
329c73b to
17da810
Compare
17da810 to
e397f94
Compare
e397f94 to
155d997
Compare
155d997 to
cbf38cd
Compare
cbf38cd to
615ddfb
Compare
615ddfb to
5dbd5c8
Compare
5dbd5c8 to
0169796
Compare
0169796 to
9fb4bf6
Compare
9fb4bf6 to
9f6aa76
Compare
9f6aa76 to
e3dfe3c
Compare
e3dfe3c to
368c8d3
Compare
368c8d3 to
9af63c6
Compare
9af63c6 to
b3b71f4
Compare
b3b71f4 to
d1947ec
Compare
8757a3f to
6febfeb
Compare
6febfeb to
792e710
Compare
792e710 to
cd6a854
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.
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.
This PR contains the following updates:
>=5.29.0->>=7.16.0GitHub Vulnerability Alerts
CVE-2023-45143
Impact
Undici clears Authorization headers on cross-origin redirects, but does not clear
Cookieheaders. By design,cookieheaders are forbidden request headers, disallowing them to be set inRequestInit.headersin browser environments. Since Undici handles headers more liberally than the specification, there was a disconnect from the assumptions the spec made, and Undici's implementation of fetch.As such this may lead to accidental leakage of cookie to a 3rd-party site or a malicious attacker who can control the redirection target (ie. an open redirector) to leak the cookie to the 3rd party site.
Patches
This was patched in e041de359221ebeae04c469e8aff4145764e6d76, which is included in version 5.26.2.
CVE-2024-24758
Impact
Undici already cleared Authorization headers on cross-origin redirects, but did not clear
Proxy-Authorizationheaders.Patches
This is patched in v5.28.3 and v6.6.1
Workarounds
There are no known workarounds.
References
CVE-2024-30261
Impact
If an attacker can alter the
integrityoption passed tofetch(), they can letfetch()accept requests as valid even if they have been tampered.Patches
Fixed in nodejs/undici@d542b8c.
Fixes has been released in v5.28.4 and v6.11.1.
Workarounds
Ensure that
integritycannot be tampered with.References
https://hackerone.com/reports/2377760
CVE-2024-30260
Impact
Undici cleared Authorization and Proxy-Authorization headers for
fetch(), but did not clear them forundici.request().Patches
This has been patched in nodejs/undici@6805746.
Fixes has been released in v5.28.4 and v6.11.1.
Workarounds
use
fetch()or disablemaxRedirections.References
Linzi Shang reported this.
CVE-2025-22150
Impact
Undici
fetch()uses Math.random() to choose the boundary for a multipart/form-data request. It is known that the output of Math.random() can be predicted if several of its generated values are known.If there is a mechanism in an app that sends multipart requests to an attacker-controlled website, they can use this to leak the necessary values. Therefore, An attacker can tamper with the requests going to the backend APIs if certain conditions are met.
Patches
This is fixed in 5.28.5; 6.21.1; 7.2.3.
Workarounds
Do not issue multipart requests to attacker controlled servers.
References
CVE-2022-31150
Impact
It is possible to inject CRLF sequences into request headers in Undici.
The same applies to
pathandmethodPatches
Update to v5.8.0
Workarounds
Sanitize all HTTP headers from untrusted sources to eliminate
\r\n.References
https://hackerone.com/reports/409943
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-12116
For more information
If you have any questions or comments about this advisory:
CVE-2022-31151
Impact
Authorization headers are already cleared on cross-origin redirect in
https://github.com/nodejs/undici/blob/main/lib/handler/redirect.js#L189, based on https://github.com/nodejs/undici/issues/872.
However, cookie headers which are sensitive headers and are official headers found in the spec, remain uncleared. There also has been active discussion of implementing a cookie store https://github.com/nodejs/undici/pull/1441, which suggests that there are active users using cookie headers in undici.
As such this may lead to accidental leakage of cookie to a 3rd-party site or a malicious attacker who can control the redirection target (ie. an open redirector) to leak the cookie to the 3rd party site.
Patches
This was patched in v5.8.0.
Workarounds
By default, this vulnerability is not exploitable.
Do not enable redirections, i.e.
maxRedirections: 0(the default).References
https://hackerone.com/reports/1635514
https://curl.se/docs/CVE-2018-1000007.html
https://curl.se/docs/CVE-2022-27776.html
For more information
If you have any questions or comments about this advisory:
CVE-2022-35949
Impact
undiciis vulnerable to SSRF (Server-side Request Forgery) when an application takes in user input into thepath/pathnameoption ofundici.request.If a user specifies a URL such as
http://127.0.0.1or//127.0.0.1Instead of processing the request as
http://example.org//127.0.0.1(orhttp://example.org/http://127.0.0.1whenhttp://127.0.0.1 is used), it actually processes the request ashttp://127.0.0.1/and sends it tohttp://127.0.0.1.If a developer passes in user input into
pathparameter ofundici.request, it can result in an SSRF as they will assume that the hostname cannot change, when in actual fact it can change because the specified path parameter is combined with the base URL.Patches
This issue was fixed in
undici@5.8.1.Workarounds
The best workaround is to validate user input before passing it to the
undici.requestcall.For more information
If you have any questions or comments about this advisory:
CVE-2022-35948
Impact
=< undici@5.8.0users are vulnerable to CRLF Injection on headers when using unsanitized input as request headers, more specifically, inside thecontent-typeheader.Example:
The above snippet will perform two requests in a single
requestAPI call:http://localhost:3000/http://localhost:3000/foo2Patches
This issue was patched in Undici v5.8.1
Workarounds
Sanitize input when sending content-type headers using user input.
For more information
If you have any questions or comments about this advisory:
CVE-2023-23936
Impact
undici library does not protect
hostHTTP header from CRLF injection vulnerabilities.Patches
This issue was patched in Undici v5.19.1.
Workarounds
Sanitize the
headers.hoststring before passing to undici.References
Reported at https://hackerone.com/reports/1820955.
Credits
Thank you to Zhipeng Zhang (@timon8) for reporting this vulnerability.
CVE-2023-24807
Impact
The
Headers.set()andHeaders.append()methods are vulnerable to Regular Expression Denial of Service (ReDoS) attacks when untrusted values are passed into the functions. This is due to the inefficient regular expression used to normalize the values in theheaderValueNormalize()utility function.Patches
This vulnerability was patched in v5.19.1.
Workarounds
There is no workaround. Please update to an unaffected version.
References
Credits
Carter Snook reported this vulnerability.
CVE-2025-47279
Impact
Applications that use undici to implement a webhook-like system are vulnerable. If the attacker set up a server with an invalid certificate, and they can force the application to call the webhook repeatedly, then they can cause a memory leak.
Patches
This has been patched in https://github.com/nodejs/undici/pull/4088.
Workarounds
If a webhook fails, avoid keep calling it repeatedly.
References
Reported as: https://github.com/nodejs/undici/issues/3895
Release Notes
nodejs/undici (undici@<5.29.0)
v7.16.0Compare Source
What's Changed
[kClose]and[kDestroy], only return Promise by @Uzlopak in #4450client.connect()sync by @Uzlopak in #4455BodyReadable.dumpby @Uzlopak in #4459[]instead of new Array(0) by @Uzlopak in #4435New Contributors
Full Changelog: nodejs/undici@v7.15.0...v7.16.0
v7.15.0Compare Source
What's Changed
New Contributors
Full Changelog: nodejs/undici@v7.14.0...v7.15.0
v7.14.0Compare Source
What's Changed
New Contributors
Full Changelog: nodejs/undici@v7.13.0...v7.14.0
v7.13.0Compare Source
What's Changed
New Contributors
Full Changelog: nodejs/undici@v7.12.0...v7.13.0
v7.12.0Compare Source
What's Changed
@returnseverywhere by @Uzlopak in #4302New Contributors
Full Changelog: nodejs/undici@v7.11.0...v7.12.0
v7.11.0Compare Source
What's Changed
node:-prefix by @Uzlopak in #4256fetchis wrongly typed (#4271) by @bpasero in #4272Dispatcher.RequestOptionsby @IvanDimanov-OfficeRnD in #4281cleanMockstoMockClientandMockPoolby @DemianParkhomenko in #4176New Contributors
Full Changelog: nodejs/undici@v7.10.0...v7.11.0
v7.10.0Compare Source
What's Changed
pnpm-lock.yamlto.gitignoreby @styfle in #4227New Contributors
Full Changelog: nodejs/undici@v7.9.0...v7.10.0
v7.9.0Compare Source
What's Changed
acceptNonStandardSearchParametersMockAgent option by @dario-piotrowicz in #4148New Contributors
Full Changelog: nodejs/undici@v7.8.0...v7.9.0
v7.8.0Compare Source
What's Changed
New Contributors
Full Changelog: nodejs/undici@v7.7.0...v7.8.0
v7.7.0Compare Source
What's Changed
Configuration
📅 Schedule: Branch creation - "" (UTC), 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.