fix(deps): update module github.com/crossplane/crossplane/v2 to v2.3.0 [security]#129
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
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:
v2.2.1→v2.3.0Crossplane: Signature verification TOCTOU allows installing unverified package content via mutable tag
GHSA-wfqx-gjrf-g28r
More information
Details
Summary
Crossplane allows package signature verification to be configured via the
ImageConfigmechanism. When enabled, the package manager uses cosign to verify that packages are correctly signed before pulling and installing them.When a package is installed using a tag reference (e.g., a semantic version), a malicious OCI registry could serve a correctly signed image for verification, then subsequently serve an unsigned image for installation. This is possible because Crossplane resolves the tag reference separately for each step.
This vulnerability is relevant only for users who do all three of the following:
Mitigation
Installing packages by image digest rather than using tags avoids this issue.
Fix
The package manager has been updated to resolve tag references once and use the resulting digest for both signature verification and image fetching. This ensures that Crossplane pulls the same content that had its signature verified. The fix has been applied to Crossplane's
mainbranch and backported to the v2.3 and v2.2 release branches; it will be released in v2.3.3 and v2.2.3.Credits
This issue was reported, independently, by @bugbunny-research and @tonghuaroot.
Severity
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:HReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Release Notes
crossplane/crossplane (github.com/crossplane/crossplane/v2)
v2.3.0Compare Source
The
v2.3.0release is a regular quarterly Crossplane release that is focused on maturing a number of key areas of functionality across the project, as Crossplane continues to become more capable, more reliable, and more performant for your production workloads. This release includes a new high-fidelity local rendering engine, finer-grained reconciliation control for both XRs and managed resources, new alpha deletion protection for Provider packages, and a wide range of fixes and reliability improvements. It also includes security fixes in Crossplane's Go toolchain and dependencies.ℹ️ Extended support for
v1.20Because
v1.20is the last minor release of thev1series and major version upgrades require additional planning for users,v1.20will continue to receive critical fixes. The final EOL date forv1.20is to be determined.v2.2It is strongly advised to upgrade to
v2.3from the previous minor version, which isv2.2. Upon upgrade for each minor release, Crossplane performs any necessary migrations of its CRDs to ensure the latest versions are stored in the Kubernetes API server. Therefore, it is important to upgrade sequentially through one minor version at a time as described in the upgrade docs.🚨 Notable and Breaking Changes
github.com/crossplane/crossplane/apis/v2is now a separate Go module from the rest of Crossplane. #7019github.com/crossplane/crossplane/v2/apistogithub.com/crossplane/crossplane/apis/v2.commonAPIs fromcrossplane-runtimehave moved togithub.com/crossplane/crossplane/apis/v2/core.v1andv2of thecommonAPIs have been collapsed into a singlev2package. The oldv1.Resource*types are nowv2.ClusterManagedResource*to differentiate them fromv2.ManagedResource*, which are the namespaced versions.crank) has moved into its own repository, https://github.com/crossplane/cli, and will be released separately from Crossplane core going forward. #7355crossplane alphaandcrossplane betatrees have moved into the main tree.crossplane beta traceis nowcrossplane resource trace🎉 Highlights
crossplane rendernow drives the real composite reconciler via a new hiddencrossplane internal rendersubcommand, instead of maintaining a parallel reimplementation. The output ofcrossplane render(and downstream tools likecrossplane-diff) now matches what would actually happen in-cluster, eliminating differences between local rendering and real reconciliation. By default it pulls the Crossplane container image to run the reconcile, so a separate controller binary is not required. See #7280 and #7339.Providerpackages from accidental deletion while instances of their managed resources still exist. When--enable-provider-deletion-protectionis set, Crossplane will automatically createClusterUsageresources that block Provider deletion through the existing Usage webhook. #7362crossplane.io/poll-intervaloverrides the controller-level poll interval for a specific resource (e.g."24h","30m"), andcrossplane.io/reconcile-requested-attriggers an immediate reconciliation when its value changes. This works immediately for XRs, but requires providers to release a new version based on crossplane-runtime v.2.3.0 to gain this behavior for their managed resources #7239Requirements.ResourceSelectorwith onlyapiVersionandkindset (nomatchNameormatchLabels), Crossplane previously rejected this as an invalid request. A selector with no match field is now correctly interpreted as "all resources of that kind". #7241CompositeResourceDefinitioncan now configure thescalesubresource on the XRs it defines, so composite resources can be scaled withkubectl scaleand other standard tooling. #7004crank render: A newrender.crossplane.io/runtime-docker-networkannotation onFunctionresources tells the Docker runtime which network function containers should join. This makescrossplane renderwork inside container jobs (such as GitHub Actions container jobs) where the default bridge network is unreachable from the caller. #7216commonAnnotationsin compositions: Compositions can now propagate a set of common annotations to every composed resource, mirroring the existingcommonLabelsbehavior. #7211crossplane beta validatenow correctly resolves and caches dependencies that use semantic version ranges (e.g.">=v0.6.0,<v1.0.0"), and adds an--update-cacheflag to always check upstream for newer matching versions. #7050crossplane beta traceadds a YAML output format. #7275CompositionRevisionand composite reconcilers now skip no-op status updates, eliminating an unnecessary reconcile loop that prevented steady state convergence. #7283🏅 Release MVP
For the v2.3 release cycle, we'd like to recognize two amazing community members for their contributions and name them the v2.3 release MVPs! 🎉
crossplane-runtime. Thank you @yordis!provider-kafka,provider-mongodbatlas, andprovider-pagerduty. To top that off, they also landed new support in core Crossplane forcommonAnnotationsfor compositions in #7211. Thank you, @fernandezcuesta!What's Changed
scalesubresource by @jonasz-lasut in #7004crossplane internal renderby @adamwg in #7339New Contributors
Full Changelog: crossplane/crossplane@v2.2.0...v2.3.0
v2.2.2Compare Source
v2.2.2 is a patch release scoped to fixing issues reported by users of Crossplane v2.2 and fixing security related issues in Crossplane's dependencies.
What's Changed
Full Changelog: crossplane/crossplane@v2.2.1...v2.2.2
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.