SignXML's signature verification with HMAC is vulnerable to an algorithm confusion attack
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- None · Low · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
SignXML is an implementation of the W3C XML Signature standard in Python. When verifying signatures with X509 certificate validation turned off and HMAC shared secret set (`signxml.XMLVerifier.verify(require_x509=False, hmac_key=...`), versions of SignXML prior to 4.0.4 are vulnerable to a potential algorithm confusion attack. Unless the user explicitly limits the expected signature algorithms using the `signxml.XMLVerifier.verify(expect_config=...)` setting, an attacker may supply a signature unexpectedly signed with a key other than the provided HMAC key, using a different (asymmetric key) signature algorithm. Starting with SignXML 4.0.4, specifying `hmac_key` causes the set of accepted signature algorithms to be restricted to HMAC only, if not already restricted by the user.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| XML-Security | signxml | before 4.0.4 | 4.0.4 | Patch available | CNA |
| — | signxml (PyPI) | before 4.0.4 | 4.0.4 | Patch available | GHSA-6vx8-pcwv-xhf4 |
- signxml VendorXML-Security Affected before 4.0.4 Fixed in 4.0.4 Patch available CNA
- signxml (PyPI) Vendor— Affected before 4.0.4 Fixed in 4.0.4 Patch available GHSA-6vx8-pcwv-xhf4
Remediation
- Fix · CNA signxml (XML-Security) Fixed in 4.0.4
- Fix · GHSA-6vx8-pcwv-xhf4 signxml (PyPI) Fixed in 4.0.4 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2025-48994
- 2026-10-03 Alias added: GHSA-6vx8-pcwv-xhf4
References
More XML-Security vulnerabilities
- TI-2025-31123 SignXML's signature verification with HMAC is vulnerable to a timing attack CVSS 4.0MEDIUM 6.9
Sources
- CVE-2025-48994 · CVE Program
- CVE-2025-48994 · NVD
- FIRST EPSS
- GHSA-6vx8-pcwv-xhf4 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences