← Vulnerability feed

Vulnerability record · CVE-2026-18568 · published 3 August 2026

CVE-2026-18568: Xml\ \ improper verification of cryptographic signature vulnerability

XXml\ · \

XML::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 check. verify in lib/XML/Sig.pm counts the `//dsig:Signature` elements into `$numsigs` and iterates over them, but two paths reach `next` before any digest or key check runs: a `SignedInfo/Reference/@URI` that resolves to no element while `$numsigs` is greater than 1, and, when `id_attr` is set, a reference that does not match the requested ID. The loop records nothing about what it checked, so when every signature takes one of those paths control reaches the unconditional `return 1` that ends verify. Two `Signature` elements whose Reference URI names an ID that no element carries is enough, as is one such element combined with `id_attr`. Any caller that passes untrusted XML to verify can receive a true return for a document in which no digest and no signature value was checked; a `cert` or `cert_text` trust anchor does not change this, because no key check runs. Versions up to 0.28 use an XML::XPath based verify that has no such skip and are not affected.

7.5 CVSS 3.1 High EPSS 0.32% · top 77.7% CWE-347 · Improper verification of cryptographic signature
7.5CVSS 3.1 base score
0.32%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
3References
5 Aug 2026Last modified by NVD

Description

XML::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 check. verify in lib/XML/Sig.pm counts the `//dsig:Signature` elements into `$numsigs` and iterates over them, but two paths reach `next` before any digest or key check runs: a `SignedInfo/Reference/@URI` that resolves to no element while `$numsigs` is greater than 1, and, when `id_attr` is set, a reference that does not match the requested ID. The loop records nothing about what it checked, so when every signature takes one of those paths control reaches the unconditional `return 1` that ends verify. Two `Signature` elements whose Reference URI names an ID that no element carries is enough, as is one such element combined with `id_attr`. Any caller that passes untrusted XML to verify can receive a true return for a document in which no digest and no signature value was checked; a `cert` or `cert_text` trust anchor does not change this, because no key check runs. Versions up to 0.28 use an XML::XPath based verify that has no such skip and are not affected.

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

Track CVE-2026-18568 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.3CVE-2025-40934Xml\ \ improper verification of cryptographic signature vulnerabilityXML-Sig versions 0.27 through 0.67 for Perl incorrectly validates XML files if signatures are omitted. An attacker can remove the signature from the …EPSS 0.16%9.1CVE-2026-9487Xml\ \ improper verification of cryptographic signature vulnerabilityXML::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…EPSS 0.28%9.1CVE-2026-9390Xml\ \ vulnerabilityXML::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 b…EPSS 0.51%7.5CVE-2012-1102Xml\ \ xml external entity (xxe) vulnerabilityIt was discovered that the XML::Atom Perl module before version 0.39 did not disable external entities when parsing XML from potentially untrusted so…EPSS 1.4%10.0CVE-2026-5430Wso2 api control plane improper verification of cryptographic signature vulnerabilityThe JWT authentication mechanism accepts tokens signed with algorithms other than those explicitly configured or supported. This allows an attacker t…KEVEPSS 0.59%9.5CVE-2026-48558SimpleHelp OIDC authentication bypass via unverified token signatureSimpleHelp 5.5.15 and earlier and 6.0 pre-release versions accept OIDC identity tokens without verifying their cryptographic signature. When OIDC is …KEVEPSS 5.7%analysed9.8CVE-2025-59718Fortinet FortiOS/FortiProxy SAML signature check bypass in FortiCloud SSOFortiOS, FortiProxy and FortiSwitchManager fail to properly verify the cryptographic signature of SAML responses used for FortiCloud SSO login. An un…KEVEPSS 68%analysed4.6CVE-2025-47827IGEL OS Secure Boot bypass via improper signature verificationIGEL OS before version 11 fails to properly verify a cryptographic signature in the igel-flash-driver module, allowing Secure Boot to be bypassed. A …KEVEPSS 4.9%analysed

Source: NIST National Vulnerability Database (record CVE-2026-18568), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.