deps: Update dependency Zio to 0.22.2 [SECURITY]#567
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
Updates-dependency: Zio Updates-dependency-from-version: 0.16.2 Updates-dependency-to-version: 0.22.2
Contributor
Author
|
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:
0.16.2→0.22.2Zio has SubFileSystem Path Confinement Bypass via Unresolved
..SegmentGHSA-h39g-6x3c-7fq9
More information
Details
Summary
SubFileSystemfails to confine operations to its declared sub path when the input path is/../(or equivalents/../,/..\\). This path passes all validation but resolves to the root of the parent filesystem, allowing directory level operations outside the intended boundary.Affected Component
Zio.UPath.ValidateAndNormalizeZio.FileSystems.SubFileSystemUPath.ValidateAndNormalizehas a trailing slash optimisation.When the input ends with
/or\, andprocessPartsis still false, the function strips the trailing separator and returns immediately before the..resolution logic runs. The input/../triggers this path: the trailing/is the last character,processPartshas not been set (because..as the first relative segment after root is specifically exempted), so the function returns/..with the..segment unresolved.The resulting
UPathwithFullName = "/.."is absolute, contains no control characters, and no colon so it passesFileSystem.ValidatePathwithout rejection.When this path reaches
SubFileSystem.ConvertPathToDelegate:The delegate filesystem receives
/(the root) instead of a path under/jail.Proof of Concept
Impact
The escape is limited to directory level operations because appending a filename after
..(e.g.,/../file.txt) causes normal..resolution to trigger, which correctly rejects the path as going above root. Only the bare terminal/../(which strips to/..) survives. This means that exploitability is limited, and this vulnerability does not escalate to file read/write.Severity
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
xoofx/zio (Zio)
v0.22.2Compare Source
Changes
✨ New Features
803ed28)🐛 Bug Fixes
..Segment (advisory GHSA-h39g-6x3c-7fq9)🧰 Misc
40d27cb)287a781)c8c2f53)Full Changelog: 0.22.1...0.22.2
Published with dotnet-releaser
v0.22.1Compare Source
Changes
🐛 Bug Fixes
Full Changelog: 0.22.0...0.22.1
Published with dotnet-releaser
v0.22.0Compare Source
Changes
🐛 Bug Fixes
Full Changelog: 0.21.3...0.22.0
Published with dotnet-releaser
v0.21.3Compare Source
Changes
🐛 Bug Fixes
b68c2f1)936c0e0)📚 Documentation
🧰 Misc
382fb7f)ab07d69)e7c26be)fa1ac45)Full Changelog: 0.21.2...0.21.3
Published with dotnet-releaser
v0.21.2Compare Source
Changes
🐛 Bug Fixes
b1ddd81)Full Changelog: 0.21.1...0.21.2
Published with dotnet-releaser
v0.21.1Compare Source
Changes
🐛 Bug Fixes
4243fdb)Full Changelog: 0.21.0...0.21.1
Published with dotnet-releaser
v0.21.0Compare Source
Changes
🚨 Breaking Changes
456f9d9)🧰 Maintenance
6dcdbf5)🧰 Misc
Full Changelog: 0.20.0...0.21.0
Published with dotnet-releaser
v0.20.0Compare Source
Changes
🚀 Enhancements
Full Changelog: 0.19.2...0.20.0
Published with dotnet-releaser
v0.19.2Compare Source
Changes
🐛 Bug Fixes
Full Changelog: 0.19.1...0.19.2
Published with dotnet-releaser
v0.19.1Compare Source
Changes
🐛 Bug Fixes
Full Changelog: 0.19.0...0.19.1
Published with dotnet-releaser
v0.19.0Compare Source
Changes
🚀 Enhancements
Full Changelog: 0.18.1...0.19.0
Published with dotnet-releaser
v0.18.1Compare Source
Changes
🐛 Bug Fixes
🚀 Enhancements
🧰 Misc
a4b9faf)Full Changelog: 0.18.0...0.18.1
Published with dotnet-releaser
v0.18.0Compare Source
Changes
✨ New Features
🐛 Bug Fixes
🚀 Enhancements
Full Changelog: 0.17.1...0.18.0
Published with dotnet-releaser
v0.17.1Compare Source
Changes
✨ New Features
7b5b5f5)🐛 Bug Fixes
🧰 Maintenance
5dd3e2a)🏭 Tests
a563d0c)🧰 Misc
de506be)468c5e8)ae0b1ca)Full Changelog: 0.17.0...0.17.1
Published with dotnet-releaser
v0.17.0Compare Source
Changes
🚀 Enhancements
🧰 Misc
b7b5f2f)99c16ec)Full Changelog: 0.16.2...0.17.0
Published with dotnet-releaser
Configuration
📅 Schedule: (UTC)
🚦 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.