-
-
Notifications
You must be signed in to change notification settings - Fork 0
chore(deps): update dependency express to v4.20.0 [security] - autoclosed #48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
All alerts resolved. Learn more about Socket for GitHub. This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored. |
5811dff to
cc37e2a
Compare
stormie-bot
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code review by ChatGPT
cc37e2a to
d15e926
Compare
stormie-bot
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code review by ChatGPT
d15e926 to
bc504d0
Compare
bc504d0 to
5434288
Compare
a6107f6 to
daa1703
Compare
daa1703 to
f89a479
Compare
f89a479 to
e644daf
Compare
e644daf to
7b295ef
Compare
7b295ef to
65287ba
Compare
b9c1855 to
83444be
Compare
83444be to
684797c
Compare
684797c to
fc70b0f
Compare
f524a6d to
17d9a22
Compare
17d9a22 to
6130577
Compare
6130577 to
71603b7
Compare
71603b7 to
b46d37f
Compare
b46d37f to
6260082
Compare
6260082 to
0033010
Compare
0033010 to
e7c9081
Compare
026f346 to
33c1f48
Compare
33c1f48 to
a52c810
Compare
a52c810 to
96be1e1
Compare
Pull request was closed
This PR contains the following updates:
4.18.3->4.20.0GitHub Vulnerability Alerts
CVE-2024-29041
Impact
Versions of Express.js prior to 4.19.2 and pre-release alpha and beta versions before 5.0.0-beta.3 are affected by an open redirect vulnerability using malformed URLs.
When a user of Express performs a redirect using a user-provided URL Express performs an encode using
encodeurlon the contents before passing it to thelocationheader. This can cause malformed URLs to be evaluated in unexpected ways by common redirect allow list implementations in Express applications, leading to an Open Redirect via bypass of a properly implemented allow list.The main method impacted is
res.location()but this is also called from withinres.redirect().Patches
expressjs/express@0867302
expressjs/express@0b74695
An initial fix went out with
[email protected], we then patched a feature regression in4.19.1and added improved handling for the bypass in4.19.2.Workarounds
The fix for this involves pre-parsing the url string with either
require('node:url').parseornew URL. These are steps you can take on your own before passing the user input string tores.locationorres.redirect.References
https://github.com/expressjs/express/pull/5539
https://github.com/koajs/koa/issues/1800
https://expressjs.com/en/4x/api.html#res.location
CVE-2024-43796
Impact
In express <4.20.0, passing untrusted user input - even after sanitizing it - to
response.redirect()may execute untrusted codePatches
this issue is patched in express 4.20.0
Workarounds
users are encouraged to upgrade to the patched version of express, but otherwise can workaround this issue by making sure any untrusted inputs are safe, ideally by validating them against an explicit allowlist
Details
successful exploitation of this vector requires the following:
Release Notes
expressjs/express (express)
v4.20.0Compare Source
==========
depthoption to customize the depth level in the parserdepthlevel for parsing URL-encoded data is now32(previously wasInfinity)res.redirect\,|, and^to align better with URL specoptions.maxAgeandoptions.expirestores.clearCookiev4.19.2Compare Source
==========
v4.19.1Compare Source
==========
v4.19.0Compare Source
==========
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.