CVE-2026-9390: critical vulnerability in TIMLEGGE XML::Sig
XML::Sig versions before 0.71 for Perl allow XPath injection in ID lookup
Published
E-mail alert when it lands in KEV, gets a public PoC or its score goes up.
28Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 9.1epss 0.5%
XML::Sig versions before 0.71 for Perl allow XPath injection in ID lookup.
verify() and _get_signed_xml() in lib/XML/Sig.pm build XPath expressions by concatenating the SignedInfo/Reference/@URI value read from the document being verified. The value is neither escaped nor checked against the NCName grammar that XML requires of an ID, so a URI containing a single quote closes the string literal in the generated expression and appends arbitrary XPath operators.
A crafted URI can make the lookup match elements the reference does not name, or every element in the document, so which node is selected for digest verification is decided by the injected expression rather than by the reference.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Affected products
TIMLEGGE · XML::SigRelated CVEs — TIMLEGGE XML::Sig
In the same product, most dangerous first.
CVE-2026-18568HIGHXML::Sig versions from 0.29 before 0.72 for Perl allow signature verification bypass because verify returns true when every signature was skipped before any cryptographic checkEPSS 0.3%CVE-2026-9487CRITICALXML::Sig versions before 0.71 for Perl allow signature wrapping via duplicate IDEPSS 0.3%CVE-2025-40934CRITICALXML-Sig prior to 0.68 for Perl improperly validates XML without signaturesEPSS 0.2%