cozy-ui
cozy-ui copied to clipboard
fix(deps): update dependency express to v4.19.2 [security]
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| express (source) | 4.17.1 -> 4.19.2 |
GitHub 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 encodeurl on the contents before passing it to the location header. 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 within res.redirect().
Patches
https://github.com/expressjs/express/commit/0867302ddbde0e9463d0564fea5861feb708c2dd https://github.com/expressjs/express/commit/0b746953c4bd8e377123527db11f9cd866e39f94
An initial fix went out with [email protected], we then patched a feature regression in 4.19.1 and added improved handling for the bypass in 4.19.2.
Workarounds
The fix for this involves pre-parsing the url string with either require('node:url').parse or new URL. These are steps you can take on your own before passing the user input string to res.location or res.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
Release Notes
expressjs/express (express)
v4.19.2
==========
- Improved fix for open redirect allow list bypass
v4.19.1
==========
- Allow passing non-strings to res.location with new encoding handling checks
v4.19.0
v4.18.3
==========
- Fix routing requests without method
- deps: [email protected]
- Fix strict json error message on Node.js 19+
- deps: content-type@~1.0.5
- deps: [email protected]
v4.18.2
===================
- Fix regression routing a large stack in a single route
- deps: [email protected]
- deps: [email protected]
- perf: remove unnecessary object clone
- deps: [email protected]
v4.18.1
===================
- Fix hanging on large stack of sync routes
v4.18.0
===================
- Add "root" option to
res.download - Allow
optionswithoutfilenameinres.download - Deprecate string and non-integer arguments to
res.status - Fix behavior of
null/undefinedasmaxAgeinres.cookie - Fix handling very large stacks of sync middleware
- Ignore
Object.prototypevalues in settings throughapp.set/app.get - Invoke
defaultwith same arguments as types inres.format - Support proper 205 responses using
res.send - Use
http-errorsforres.formaterror - deps: [email protected]
- Fix error message for json parse whitespace in
strict - Fix internal error when inflated body exceeds limit
- Prevent loss of async hooks context
- Prevent hanging when request already read
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- Fix error message for json parse whitespace in
- deps: [email protected]
- Add
priorityoption - Fix
expiresoption to reject invalid dates
- Add
- deps: [email protected]
- Replace internal
evalusage withFunctionconstructor - Use instance methods on
processto check for listeners
- Replace internal
- deps: [email protected]
- Remove set content headers that break response
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- Prevent loss of async hooks context
- deps: [email protected]
- deps: [email protected]
- Fix emitted 416 error missing headers property
- Limit the headers removed for 304 response
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- Remove code 306
- Rename
425 Unordered Collectionto standard425 Too Early
v4.17.3
===================
- deps: accepts@~1.3.8
- deps: mime-types@~2.1.34
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- Fix handling of
__proto__keys
- Fix handling of
- pref: remove unnecessary regexp for trust proxy
v4.17.2
===================
- Fix handling of
undefinedinres.jsonp - Fix handling of
undefinedwhen"json escape"is enabled - Fix incorrect middleware execution with unanchored
RegExps - Fix
res.jsonp(obj, status)deprecation message - Fix typo in
res.isJSDoc - deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: type-is@~1.6.18
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- Fix
maxAgeoption to reject invalid values
- Fix
- deps: proxy-addr@~2.0.7
- Use
req.socketover deprecatedreq.connection - deps: [email protected]
- deps: [email protected]
- Use
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
- pref: ignore empty http tokens
- deps: [email protected]
- deps: [email protected]
- deps: [email protected]
Configuration
📅 Schedule: Branch creation - "" in timezone Europe/Paris, 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.
- [ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
BundleMon
Unchanged files (3)
| Status | Path | Size | Limits |
|---|---|---|---|
| :white_check_mark: | dist/cozy-ui.min.css |
20KB | +10% |
| :white_check_mark: | transpiled/react/stylesheet.css |
17.92KB | +10% |
| :white_check_mark: | dist/cozy-ui.utils.min.css |
10.74KB | +10% |
No change in files bundle size
Unchanged groups (1)
| Status | Path | Size | Limits |
|---|---|---|---|
| :white_check_mark: | transpiled/react/** |
666.74KB | - |
Final result: :white_check_mark:
View report in BundleMon website ➡️
The latest updates on your projects. Learn more about Argos notifications ↗︎
Waiting for the first build to start…