bitloops-language
bitloops-language copied to clipboard
🚨 [security] [boilerplate/ts/infra/rest/express] Update express 4.18.2 → 4.19.2 (minor)
🚨 Your current dependencies have known security vulnerabilities 🚨
This dependency update fixes known security vulnerabilities. Please see the details below and assess their impact carefully. We recommend to merge and deploy this as soon as possible!
Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.
What changed?
✳️ express (4.18.2 → 4.19.2) · Repo · Changelog
Security Advisories 🚨
🚨 Express.js Open Redirect in malformed URLs
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
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
#5539
koajs/koa#1800
https://expressjs.com/en/4x/api.html#res.location
Release Notes
4.19.2
What's Changed
Full Changelog: 4.19.1...4.19.2
4.19.0
What's Changed
- fix typo in release date by @UlisesGascon in #5527
- docs: nominating @wesleytodd to be project captian by @wesleytodd in #5511
- docs: loosen TC activity rules by @wesleytodd in #5510
- Add note on how to update docs for new release by @crandmck in #5541
- Prevent open redirect allow list bypass due to encodeurl
- Release 4.19.0 by @wesleytodd in #5551
New Contributors
Full Changelog: 4.18.3...4.19.0
4.18.3
Main Changes
- 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]
Other Changes
- Use https: protocol instead of deprecated git: protocol by @vcsjones in #5032
- build: [email protected] and [email protected] by @abenhamdine in #5034
- ci: update actions/checkout to v3 by @armujahid in #5027
- test: remove unused function arguments in params by @raksbisht in #5124
- Remove unused originalIndex from acceptParams by @raksbisht in #5119
- Fixed typos by @raksbisht in #5117
- examples: remove unused params by @raksbisht in #5113
- fix: parameter str is not described in JSDoc by @raksbisht in #5130
- fix: typos in History.md by @raksbisht in #5131
- build : add [email protected] by @abenhamdine in #5028
- test: remove unused function arguments in params by @raksbisht in #5137
- use random port in test so it won't fail on already listening by @rluvaton in #5162
- tests: use cb() instead of done() by @kristof-low in #5233
- examples: remove multipart example by @riddlew in #5195
- Update support Node.js@18 in the CI by @UlisesGascon in #5490
- Fix favicon-related bug in cookie-sessions example by @DmytroKondrashov in #5414
- Release 4.18.3 by @UlisesGascon in #5505
New Contributors
- @vcsjones made their first contribution in #5032
- @abenhamdine made their first contribution in #5034
- @armujahid made their first contribution in #5027
- @raksbisht made their first contribution in #5124
- @rluvaton made their first contribution in #5162
- @kristof-low made their first contribution in #5233
- @riddlew made their first contribution in #5195
- @DmytroKondrashov made their first contribution in #5414
Full Changelog: 4.18.2...4.18.3
Does any of this look wrong? Please let us know.
Commits
See the full diff on Github. The new version differs by 59 commits:
4.19.2Improved fix for open redirect allow list bypass4.19.1Allow passing non-strings to res.location with new encoding handling checks fixes #5554 #5555fixed un-edited version in history.md for 4.19.0build: fix build due to inconsistent supertest behavior in older versions4.19.0Prevent open redirect allow list bypass due to encodeurlAdd note on how to update docs for new release (#5541)deps: [email protected]docs: loosen TC activity rulesdocs: nominating @wesleytodd to be project captiandocs: update release date4.18.3build: pin Node 21.x to minorbuild: pin Node 21.x to minorbuild: support Node.js 21.6.2build: support Node.js 21.x in appveyorbuild: support Node.js 21.xbuild: support Node.js 20.x in appveyorbuild: support Node.js 20.xexamples: improve view count in cookie-sessionsbuild: [email protected]docs: add documentation for benchmarksexamples: remove multipart exampletests: fix handling multiple callbacksdocs: add project captains to contributiondocs: update TC governance rulesbuild: actions/checkout@v4build: [email protected]build: [email protected]build: [email protected]tests: use random port in listen testbuild: [email protected]build: use [email protected] for Node.js < 10lint: remove unused function arguments in Route testsbuild: [email protected]build: [email protected]build: [email protected]tests: wait for server close in app.listen()build: fix code coverage aggregate uploadFix routing requests without methodbuild: support Node.js 19.xdocs: fix typos in historybuild: [email protected]build: [email protected]deps: [email protected]docs: add missing JSDoc param for parseExtendedQueryStringbuild: use $GITHUB_OUTPUT for environment listbuild: [email protected]build: [email protected]lint: remove unused parameters in examplesdocs: fix typos in JSDoc commentslint: remove unused parameter from internal functionlint: remove unused function arguments in testsbuild: actions/checkout@v3build: [email protected]build: [email protected]docs: update git clone to https protocol
↗️ @bitloops/bl-boilerplate-core (indirect, 0.1.0 → 0.1.1) · Repo
Sorry, we couldn't find anything useful about this release.
Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.
All Depfu comment commands
- @depfu rebase
- Rebases against your default branch and redoes this update
- @depfu recreate
- Recreates this PR, overwriting any edits that you've made to it
- @depfu merge
- Merges this PR once your tests are passing and conflicts are resolved
- @depfu cancel merge
- Cancels automatic merging of this PR
- @depfu close
- Closes this PR and deletes the branch
- @depfu reopen
- Restores the branch and reopens this PR (if it's closed)
- @depfu pause
- Ignores all future updates for this dependency and closes this PR
- @depfu pause [minor|major]
- Ignores all future minor/major updates for this dependency and closes this PR
- @depfu resume
- Future versions of this dependency will create PRs again (leaves this PR as is)