[AutoPR- Security] Patch libxml2 for CVE-2026-86144, CVE-2026-86143, CVE-2026-86142, CVE-2026-86140, CVE-2026-86138, CVE-2026-86137 [HIGH] - #18738
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
|
Patch Analysis: CVE-2026-86137 : xmlregexp Out-of-Bounds Read The backport correctly implements the upstream fix by adding bounds checking to the Files Modified
CVE-2026-86138 : (xmlDictAddQString Integer Overflow) Patch matches with upstream patch. all hunks succeeded without issues. Files Modified
CVE-2026-86140: (xmlSnprintfElements Buffer Overflow) Patch matches with upstream patch. all hunks succeeded without issues. Files Modified
CVE-2026-86142: (xmlXPtrEvalXPtrPart Integer Overflow) Backported: Yes Files Modified
CVE-2026-86143: (xmlOutputBufferWrite Integer Overflow) The backport correctly implements upstream's overflow detection by checking buffer sizes against Files Modified
CVE-2026-86144: (XInclude parseFlags Propagation) The backport correctly implements upstream's fix by propagating Files Modified xinclude.c — Propagates parse flags into XInclude text/subtree loads; adds XML_IO_NETWORK_ATTEMPT to the load-error filter Why test cases were not added -Missing APIs — The test needs per-context error handlers (xmlCtxtSetErrorHandler, xmlTextReaderSetStructuredErrorHandler), which don't exist until 2.12; they fail to link on 2.11.5. -Different error strings — The .err files expect upstream's failed to load "URL" wording, but 2.11.5 emits Attempt to load network entity URL, so the byte-comparison never matches. -Stability risk — Adapting the test to 2.11.5's global error handler regressed the whole %check suite (schemas/relaxng/xmlid cascaded to 90+ failures). Verification POC Summary — CVE-2026-86144 Goal: Prove the fix makes XInclude honor XML_PARSE_NONET, blocking attacker-controlled network fetches. Vulnerability reproduced on unpatched lib Fix verified on patched lib Pipelines - Run PR-18738+libxml2+unknown has been re-triggered and it has passed. |




Auto Patch libxml2 for CVE-2026-86144, CVE-2026-86143, CVE-2026-86142, CVE-2026-86140, CVE-2026-86138, CVE-2026-86137.
Autosec pipeline run -> https://dev.azure.com/mariner-org/mariner/_build/results?buildId=1198332&view=results
CVE-2026-86144 : Single Patch Backporter Pipeline Run -> https://dev.azure.com/mariner-org/mariner/_build/results?buildId=1198342&view=results
CVE-2026-86143 : Single Patch Backporter Pipeline Run -> https://dev.azure.com/mariner-org/mariner/_build/results?buildId=1198341&view=results
CVE-2026-86137 : Single Patch Backporter Pipeline Run -> https://dev.azure.com/mariner-org/mariner/_build/results?buildId=1198340&view=results
Merge Checklist
All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)
*-staticsubpackages, etc.) have had theirReleasetag incremented../cgmanifest.json,./toolkit/scripts/toolchain/cgmanifest.json,.github/workflows/cgmanifest.json)./LICENSES-AND-NOTICES/SPECS/data/licenses.json,./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md,./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)*.signatures.jsonfilessudo make go-tidy-allandsudo make go-test-coveragepassSummary
What does the PR accomplish, why was it needed?
Change Log
Does this affect the toolchain?
YES/NO
Associated issues
Links to CVEs
Test Methodology