VYPR
Moderate severityNVD Advisory· Published Dec 9, 2025· Updated Dec 9, 2025

robrichards/xmlseclibs has an Libxml2 Canonicalization error which can bypass Digest/Signature validation

CVE-2025-66578

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.

PackageAffected versionsPatched versions
robrichards/xmlseclibsPackagist
< 3.1.43.1.4

Affected products

1

Patches

1
69fd63080bc4

Merge commit from fork

https://github.com/robrichards/xmlseclibsRob RichardsDec 8, 2025via ghsa
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

News mentions

0

No linked articles in our index yet.