robrichards/xmlseclibs has an Libxml2 Canonicalization error which can bypass Digest/Signature validation
Description
xmlseclibs is a library written in PHP for working with XML Encryption and Signatures. Versions 3.1.3 contain an authentication bypass vulnerability due to a flaw in the libxml2 canonicalization process during document transformation. When libxml2’s canonicalization is invoked on an invalid XML input, it may return an empty string rather than a canonicalized node. xmlseclibs then proceeds to compute the DigestValue over this empty string, treating it as if canonicalization succeeded. This issue is fixed in version 3.1.4. Workarounds include treating canonicalization failures (exceptions or nil/empty outputs) as fatal and aborting validation, and/or adding explicit checks to reject when canonicalize returns nil/empty or raises errors.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
robrichards/xmlseclibsPackagist | < 3.1.4 | 3.1.4 |
Affected products
1- Range: < 3.1.4
Patches
169fd63080bc4Merge commit from fork
2 files changed · +9 −1
CHANGELOG.txt+4 −0 modified@@ -1,5 +1,9 @@ xmlseclibs.php ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| +08, Dec 2025, 3.1.4 +Security: +- fix canonicalization bypass error (d0ge) + 20, Nov 2024, 3.1.3 Bug Fixes: - remove loadKey check due to BC issues
src/XMLSecurityDSig.php+5 −1 modified@@ -293,7 +293,11 @@ private function canonicalizeData($node, $canonicalmethod, $arXPath=null, $prefi } } - return $node->C14N($exclusive, $withComments, $arXPath, $prefixList); + $ret = $node->C14N($exclusive, $withComments, $arXPath, $prefixList); + if ($ret === false) { + throw new Exception("Canonicalization failed"); + } + return $ret; } /**
Vulnerability mechanics
Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
5- github.com/advisories/GHSA-c4cc-x928-vjw9ghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2025-66578ghsaADVISORY
- github.com/robrichards/xmlseclibs/blob/f4131320c6dcd460f1b0c67f16f8bf24ce4b5c3e/src/XMLSecurityDSig.phpghsax_refsource_MISCWEB
- github.com/robrichards/xmlseclibs/commit/69fd63080bc47a8d51bc101c30b7cb756862d1d6ghsax_refsource_MISCWEB
- github.com/robrichards/xmlseclibs/security/advisories/GHSA-c4cc-x928-vjw9ghsax_refsource_CONFIRMWEB
News mentions
0No linked articles in our index yet.