-
Notifications
You must be signed in to change notification settings - Fork 419
skopeo/1.21.0-r1: cve remediation #77696
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
skopeo/1.21.0-r1: cve remediation #77696
Conversation
<!--ci-cve-scan:must-fix: GHSA-cgrx-mc8f-2prm-->
🛑 Build Failed: Compilation
Build Details
Root Cause Analysis 🔍The compilation failed because the securejoin package is missing the OpenInRoot and Reopen functions that are being referenced in the userns.go file. This appears to be a dependency version mismatch where the vendored storage library expects newer functions from securejoin that are not available in the current version, likely caused by the go/bump step updating dependencies to incompatible versions. 🔍 Build failure fix suggestionsFound similar build failures that have been fixed in the past and analyzed them to suggest a fix: Similar PRs with fixes
Suggested ChangesFile: skopeo.yaml
Replacement: Content: Click to expand fix analysisAnalysisLooking at the three similar fixes, there's a clear pattern: all failures involve the same undefined functions (securejoin.OpenInRoot and securejoin.Reopen) in container storage libraries. The consistent solution across fixes #1 and #2 is to add a specific replace directive for github.com/cyphar/[email protected] in the go/bump step. Fix #0 took a different approach by updating to a newer version and removing the go/bump step entirely, but the replace directive approach appears more targeted and safer. Click to expand fix explanationExplanationThe fix works by explicitly pinning the github.com/cyphar/filepath-securejoin dependency to version 0.5.1, which contains the OpenInRoot and Reopen functions that the vendored storage code expects. When go/bump updates dependencies, it can sometimes pull in incompatible versions where newer storage libraries expect functions that don't exist in older securejoin versions, or vice versa. The replace directive forces Go to use the specific compatible version (0.5.1) regardless of what version the dependency resolution would normally select. This approach has been proven effective in the similar podman fixes and directly addresses the root cause of the undefined function compilation errors. Click to expand alternative approachesAlternative Approaches
Was this comment helpful? Please use 👍 or 👎 reactions on this comment. |
|
This vulnerability remediation is stale and no longer needed. 👋 Advisory CGA-whvh-xw6j-cp2v has the latest event type of "pending-upstream-fix" View with: 🔀 v2 advisory logic would not have closed this PR: Found 4 advisories, but 2 of them are not resolved (CGA-xgf8-j9pr-8gh6, CGA-8v8q-7q24-2w5h). |
|
This vulnerability remediation is stale and no longer needed. 👋 Advisory CGA-whvh-xw6j-cp2v has the latest event type of "pending-upstream-fix" View with: |
|
This vulnerability remediation is stale and no longer needed. 👋 Advisory CGA-g33r-9mh5-g9jh has the latest event type of "PENDING_UPSTREAM_FIX" View with: |
skopeo/1.21.0-r1: fix GHSA-cgrx-mc8f-2prm
Advisory data: https://github.com/wolfi-dev/advisories/blob/main/skopeo.advisories.yaml
"Breadcrumbs" for this automated service
Inspected git repositories: https://github.com/containers/[email protected]