Skip to content
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

ruby: update to 3.3.5 to resolve CVE-2024-39908 and CVE-2024-49761 #10988

Open
wants to merge 4 commits into
base: fasttrack/3.0
Choose a base branch
from

Conversation

Redent0r
Copy link
Contributor

@Redent0r Redent0r commented Nov 8, 2024

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

  • The toolchain has been rebuilt successfully (or no changes were made to it)
  • The toolchain/worker package manifests are up-to-date
  • Any updated packages successfully build (or no packages were changed)
  • Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
  • Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
  • All package sources are available
  • cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
  • LICENSE-MAP files are up-to-date (./LICENSES-AND-NOTICES/SPECS/data/licenses.json, ./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md, ./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)
  • All source files have up-to-date hashes in the *.signatures.json files
  • sudo make go-tidy-all and sudo make go-test-coverage pass
  • Documentation has been updated to match any changes to the build system
  • Ready to merge

Summary

What does the PR accomplish, why was it needed?
Upgrade ruby to 3.3.5 to resolve CVE-2024-39908. ruby 3.3.5 contains rubygem-xml version > 3.3.2, which is not affected by CVE-2024-39908 .

Also:
ruby: patch GHSA-2rxp-v6pw-ch6m
rubygem-rexml: patch GHSA-2rxp-v6pw-ch6m

Change Log
Does this affect the toolchain?

NO

Links to CVEs
Test Methodology

@Redent0r Redent0r force-pushed the saulparedes/CVE-2024-39908 branch 3 times, most recently from 44f08f1 to 4e28408 Compare November 9, 2024 00:04
@Redent0r
Copy link
Contributor Author

Redent0r commented Nov 9, 2024

Failed install test in buddy build but able to install in 3.0 container
image

@Redent0r Redent0r marked this pull request as ready for review November 9, 2024 00:42
@Redent0r Redent0r requested a review from a team as a code owner November 9, 2024 00:42
@Redent0r Redent0r changed the base branch from 3.0 to fasttrack/3.0 November 11, 2024 18:04
@Redent0r
Copy link
Contributor Author

Redent0r commented Nov 13, 2024

I'm not sure how it failed fast track github PR check to build, but built correctly in https://dev.azure.com/mariner-org/mariner/_build/results?buildId=674310&view=results
edit: I see now is because it's an n+1 build. I'll look at the failures
image

edit: realized I need to update some rubygem versions, per https://github.com/microsoft/azurelinux/pull/10400/files#diff-4edf04c433f280e43572ad4bc157e9849973a07d14a9dd85e949090f03386010

@anphel31 anphel31 changed the title ruby: update to 3.3.5 to resolve CVE-2024-39908 ruby: update to 3.3.5 to resolve CVE-2024-39908 and CVE-2024-49761 Nov 14, 2024
Also remove CVE-2024-41946.patch as it no longer applies as ruby 3.3.5 containers rubygem-rexml 3.3.6, where CVE-2024-41946 is already fixed

Signed-off-by: Saul Paredes <[email protected]>
Patch adapted from ruby/rexml@ce59f2e
which fixes CVE-2024-49761 per https://nvd.nist.gov/vuln/detail/CVE-2024-49761

Needed for rubygem-rexml versions < 3.3.9

Signed-off-by: Saul Paredes <[email protected]>
@Redent0r Redent0r force-pushed the saulparedes/CVE-2024-39908 branch 2 times, most recently from f261bc6 to 3ac5416 Compare November 18, 2024 21:13
@Redent0r
Copy link
Contributor Author

Fixes all rubygem build failures. Test failures are no regressions by comparing against https://dev.azure.com/mariner-org/mariner/_build?definitionId=1489

%{_bindir}/fluent-gem.lock
%{_bindir}/fluent-plugin-config-format.lock
%{_bindir}/fluent-plugin-generate.lock
%{_bindir}/fluentd.lock
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we want to package the .lock file's? Is that what other distributions have done?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Redent0r Redent0r force-pushed the saulparedes/CVE-2024-39908 branch 2 times, most recently from 9a684c7 to 02b8c42 Compare November 20, 2024 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants