Skip to content

[Medium] Patch libxml2 for CVE-2025-6021 #14081

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

v-smalavathu
Copy link
Contributor

@v-smalavathu v-smalavathu commented Jun 23, 2025

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
Summary

libxml2: Patch for CVE-2025-6021
Patch Modified: Yes

Astrolabe patch reference: https://gitlab.gnome.org/GNOME/libxml2/-/commit/ad346c9a249c4b380bf73c460ad3e81135c5d781
From Upstream patch, Added "include <stdinc.h>" header file in to the patch file, required for definition of SIZE_MAX.

Change Log
  • new file: SPECS/libxml2/CVE-2025-6021.patch
  • modified: SPECS/libxml2/libxml2.spec
  • modified: toolkit/resources/manifests/package/pkggen_core_aarch64.txt
  • modified: toolkit/resources/manifests/package/pkggen_core_x86_64.txt
  • modified: toolkit/resources/manifests/package/toolchain_aarch64.txt
  • modified: toolkit/resources/manifests/package/toolchain_x86_64.txt
Does this affect the toolchain?

YES

Associated issues
Links to CVEs
Test Methodology
  • Verified: patch CVE-2025-6021.patch is applied as shown below
    Screenshot 2025-06-23 162726
  • Local build.

Signed-off-by: Sreenivasulu Malavathula <v-smalavathu@microsoft.com>
@v-smalavathu v-smalavathu requested a review from a team as a code owner June 23, 2025 21:50
@v-smalavathu v-smalavathu marked this pull request as draft June 23, 2025 21:50
@v-smalavathu v-smalavathu marked this pull request as ready for review June 24, 2025 06:01
#endif

#define IN_LIBXML
+#include <stdint.h>
Copy link
Contributor

Choose a reason for hiding this comment

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

In upstream master, this macro is defined in 2 headers:
#include "private/memory.h": Refer commit
#include "private/io.h"

tree.c includes these headers. But the commits are not present in our sources and hence we see the error.
I would suggest we add similar definition in tree.c rather than importing a complete header file.

Copy link
Contributor Author

@v-smalavathu v-smalavathu Jun 24, 2025

Choose a reason for hiding this comment

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

The upstream master libxml2 version is 2,15.0 but our 2,0 branch libxml2 version is 2.10.4. The files mentioned above is not available like private/memory.h or private/io.h in our version. In our version tree,c file, is does not include 'private/*.h' header files, also does not exist.
-Thanks

@Sumynwa
Copy link
Contributor

Sumynwa commented Jun 24, 2025

Except for the header changes, the patches are in line with upstream changes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
main PR Destined for main Packaging security
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants