-
Notifications
You must be signed in to change notification settings - Fork 862
[release-1.29] Bump runc up to 1.2.9 for CVE-2025-52881, CVE-2025-31133 and CVE-2025-52565 #6538
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
base: release-1.29
Are you sure you want to change the base?
[release-1.29] Bump runc up to 1.2.9 for CVE-2025-52881, CVE-2025-31133 and CVE-2025-52565 #6538
Conversation
ed66f58 to
6566cd2
Compare
6566cd2 to
ded4bd3
Compare
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: cevich The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@cevich I'm not sure where all these PRs came from when you put this together, regardless, it looks like a man page or two may need tweaking: |
|
Actually the documentation is correct. My clanker helped identify the change as being caused by an update to Cobra w/ behavior changes, as part of the runc v1.2.8 update. So sadly, code changes are needed to fix this here and in #6540 |
I've lost track days ago. With David out this week, I'm just going down my list of what needs updating and trying to make as much backport progress as I can (based on the next higher version). I'm hoping when the dust settles, it will all get worked out in the end. |
|
Testing out a fix to the CLI options / Cobra update problem over in PR #6540 |
ded4bd3 to
71772b7
Compare
|
Added "Handle Cobra v1.5 -> v1.8 behavior changes" commit. |
28b801f to
23c69c3
Compare
|
Suggestion from Tom/Nalin:
|
|
Backported:
Note: I saw a few commits (6bf7400 and 56eadec) I may consider bringing here in place of disabling the lint-checking, but it's a low priority ATM. |
513abff to
7bf8e56
Compare
7bf8e56 to
becc9db
Compare
|
Note to me: CI first turned green in becc9db |
50a274d to
2d01a8e
Compare
8c823de to
55f20a6
Compare
a33eea4 to
7d89222
Compare
... setting RLIMIT_NPROC wrong The version of containers/common we're currently using on this branch included a bug which was later fixed by containers/common#2199. If we get an update on its v0.60 branch which includes that fix, we can drop this patch from this branch, but until then, work around the part that breaks our tests. Signed-off-by: Nalin Dahyabhai <[email protected]> Signed-off-by: tomsweeneyredhat <[email protected]> Signed-off-by: Chris Evich <[email protected]>
Grab a piece of containers#5550 that uses `chown` to reset ownership of the sample repository we're going to be serving to match the current user, to avoid a git unsafe-directory error. Signed-off-by: Nalin Dahyabhai <[email protected]>
The updated images we're using have switched from Ubuntu to Debian. Signed-off-by: Nalin Dahyabhai <[email protected]>
Run integration tests (both as root and rootless) with both crun and runc on Fedora, to help ensure that we can use either. Signed-off-by: Nalin Dahyabhai <[email protected]>
Handle requested relabeling of bind mounts (i.e., the "z" and "Z" flags) directly, instead of letting the runtime handle the relabeling. Signed-off-by: Nalin Dahyabhai <[email protected]>
This is a common mistake by users and is ignored in some places but not everywhere. This change will help this to be ignored everwhere. Signed-off-by: Daniel J Walsh <[email protected]>
Update the image library to get a version of the "docker-daemon" transport that can contact the version of the docker daemon that we use in our conformance tests. Signed-off-by: Nalin Dahyabhai <[email protected]>
This mostly just inherits the c/common/pkg/auth implementation, except that AuthFilePath and DockerCompatAuthFilePath can not be set simultaneously, so don't always set AuthFilePath. c/common already defaults to the same locations internally. Test handle only invalid commands; a true interoperability test would require a running Docker on the CI systems, which is not currently available. That interoperability was tested manually (and is presumed to be integration-tested in the Podman repo). Signed-off-by: Miloslav Trmač <[email protected]>
All `[]string`s in containers.conf have now been migrated to attributed string slices which require some adjustments in Buildah and Podman. [NO NEW TESTS NEEDED] Signed-off-by: Valentin Rothberg <[email protected]>
Newer docker build doesn't set it, so we need to stop. Signed-off-by: Nalin Dahyabhai <[email protected]>
Make setting the Parent field in the config blob of a docker format image optional (yes, we're bringing it back!), since it no longer appears to be set by newer versions of docker build. Signed-off-by: Nalin Dahyabhai <[email protected]>
If the working directory ends with the path separator, and trimming it wouldn't produce an empty value, trim it, for conformance. This was originally fixed in imagebuilder, and we picked up the change automatically, but this should provide the same end-result. Signed-off-by: Nalin Dahyabhai <[email protected]>
6ec6f04 includes both dependency updates and a fix for a test which was impacted by the behaviors it changed. Pull the dependency updates out. Signed-off-by: Nalin Dahyabhai <[email protected]>
Dependency updates changed the text of an error message; update tests that checked for it. Signed-off-by: Nalin Dahyabhai <[email protected]>
Pushing an image won't log that signatures are being written if the image isn't signed, so check for the message that's logged when the manifest is written. Signed-off-by: Nalin Dahyabhai <[email protected]>
Pick up the test updates from containers#4829, where we learned that disabling SELinux process labeling in a non-privileged context doesn't result in the container process being granted super privileges. Signed-off-by: Nalin Dahyabhai <[email protected]>
Signed-off-by: flouthoc <[email protected]>
When running unit and conformance tests, drop the -cover flag from the invocation of `go test`. Signed-off-by: Nalin Dahyabhai <[email protected]>
Signed-off-by: Nalin Dahyabhai <[email protected]> Signed-off-by: Chris Evich <[email protected]> Assisted-by: Claude (Anthropic)
Use the named constants for the status values that runtimes can report to us when we run them with the "state" command. Signed-off-by: Nalin Dahyabhai <[email protected]>
It is completely broken (see containers#4396) and is now causing failures in Fedora gating tests: https://artifacts.dev.testing-farm.io/30e7b5bc-d162-4ae7-9a60-896f0186bf73/ Signed-off-by: Ed Santiago <[email protected]>
Bump Buildah to v1.29.6 Signed-off-by: tomsweeneyredhat <[email protected]> Signed-off-by: Chris Evich <[email protected]>
825cdd4 to
9b7207d
Compare
|
force-push: Injected backport of "Partially work around containers/common" commit. |
|
Re-running about half the integration tests. All are networking flakes. |
|
LGTM |
|
Re-ran: "Integration fedora-40 using crun w/ vfs" - Another likely flake, this time some kind of "out of disk space" error 😞 |
|
Oof, re-ran again, different flakes this time 😢 |
|
LGTM, for reference... |
|
Note: The "[Partially work around containers/common]" commit is missing from the changelog 😞 |
What type of PR is this?
/kind other
What this PR does / why we need it:
Backport PR #6484 & #6511
How to verify it
CI + Manual
Which issue(s) this PR fixes:
None
Special notes for your reviewer:
The commits in this PR were created with the assistance of AI, based on the source #6520. When reviewing please pay special attention to the following:
Vendor directory consistency:
make vendor-in-containerafter eachgo.modchangego.modandgo.sumAll compilation verified:
makeafter every commit"Disable lint checking"
rather the process is simply killed.
source PRs.
"Bump runc to v1.2.8 - CVE-2025-52881" and subsequent commits include extensive
.Get()method calls:run_common.go: Added.Get()calls fordefaultConfig.Containers.DNSServers.Get(),DNSSearches.Get(), andDNSOptions.Get()run_linux.go: Added.Get()call fordefaultContainerConfig.Containers.DefaultUlimits.Get()pkg/cli/common.go: Added.Get()calls fordefaultContainerConfig.Containers.Volumes,Devices,DNSSearches,DNSServers, andDNSOptionsimagebuildah/executor.go: Added.Get()calls fordefaultContainerConfig.Containers.DevicesandVolumescmd/buildah/from.go: Added.Get()calls fordefaultContainerConfig.Containers.DefaultUlimitsandDevicescmd/buildah/main.go: Added.Get()call fordefaultContainerConfig.Engine.Envcontainers/commonpackage changedattributedstring.Slicetypes to require explicit.Get()method calls to convert to[]stringbefore use."run: handle relabeling bind mounts ourselves" - SELinux relabeling changes:
relabel()function inrun_common.gothat wrapslabel.Relabel()with error handling forENOTSUPcasesrun_linux.goto detect and handlezandZmount flags before passing mounts to the runtime, removing these flags from mount options after relabelingrelabel()function was added as a helper to centralize the relabeling logic."vendor: switch to moby/sys/capability" - Capability library migration:
github.com/syndtr/gocapabilitytogithub.com/moby/sys/capabilityingo.modcapability.List()tocapability.ListKnown()SELinux API updates - Direct selinux package usage:
"Don't set ambient capabilities" - Ambient capability handling:
chroot/run_linux.goto set ambient capabilities to empty array{}instead of usingspec.Process.Capabilities.Ambientcmd/buildah/unshare.goin thedebugCapabilitiesfunction, but this was skipped during backport because thedebugCapabilitiesfunction does not exist in the release-1.29 branch. Only thechroot/run_linux.gochanges were applied."Integration tests: run git daemon on a random-but-bind()able port" and "Add a dummy 'runtime' that just dumps its config file" - New test infrastructure:
"runUsingRuntime: use named constants for runtime states" - Runtime state constants:
specspackage version used by release-1.29."Bump Buildah to v1.29.6" - Version and changelog updates:
buildah_release 1.29.6script.Does this PR introduce a user-facing change?