Skip to content
OpenAdvisories
Critical · 9.1 CVE-2026-9487 EUVD-2026-52270GHSA-wqp7-2ww4-q6mf

XML::Sig versions before 0.71 for Perl allow signature wrapping via duplicate ID

Published Aug 3, 2026 · Updated Aug 3, 2026 · Assigned by CPANSec

Description

XML::Sig versions before 0.71 for Perl allow signature wrapping via duplicate ID.

_get_signed_xml() in lib/XML/Sig.pm, called from verify(), resolves the SignedInfo Reference/@URI to a node with the XPath expression "//*[@ID='$id']" and returns the first node of the resulting node set. A document in which two elements share that ID value is accepted: the digest and signature are checked against whichever element comes first in document order, and the duplicate is not detected.

Such a document verifies successfully while an application that resolves the same ID independently can read the second, attacker supplied element; in a SAML2 context this places the contents of an Assertion under attacker control.

Affected products

VendorProductAffectedFixed
TIMLEGGE XML::Sig < 0.71 0.71

References