Skip to main content

Jwt Attack CVE-2026-33487

HIGH
Improper Verification of Cryptographic Signature (CWE-347)
2026-03-26 GitHub_M
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify target using goxmldsig <1.6.0 with Go <1.22
  2. Delivery
    Craft XML document with multiple SignedInfo references
  3. Exploit
    Submit to SAML/signature validation endpoint
  4. Execution
    Trigger loop variable capture bug
  5. Persist
    Bypass signature validation
  6. Impact
    Authenticate with forged credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Signature verification
Exploitation Conditions

Requires target application to use goxmldsig library versions prior to 1.6.0 for XML Digital Signature validation. Additionally requires either Go compiler version before 1.22 OR go.mod file specifying an older Go language version (e.g., go 1.21 or earlier), as Go 1.22+ changed loop variable capture semantics to fix this class of bugs. The vulnerable code path is triggered when processing XML documents containing SignedInfo blocks with multiple Reference elements sharing the same URI or ID attribute. Exploitation is limited to contexts where the application accepts externally-supplied signed XML documents, such as SAML authentication endpoints, XML document verification services, or federated identity providers. Attack vector is network-based (AV:N) with no authentication required (PR:N), but practical exploitation requires knowledge of the target's Go version and goxmldsig library version, plus understanding of XML signature structure to craft payloads that trigger the multi-reference scenario. Applications using Go 1.22+ with updated go.mod are inherently immune regardless of goxmldsig version.

Impact

CVSS 7.5 (High) indicates network-accessible, low-complexity exploitation requiring no authentication or user interaction, with high integrity impact. However, real-world risk requires nuanced assessment across multiple signals. EPSS score of 0.02% (5th percentile) suggests extremely low observed exploitation probability in the wild, indicating this is not currently a widespread attacker target. The vulnerability requires specific conditions: applications must use goxmldsig versions before 1.6.0 AND either run on Go versions before 1.22 or have go.mod configured for older Go versions. Attack complexity is genuinely low once these conditions are met, as crafting malicious XML signatures is straightforward for attackers familiar with XMLDSig structure. The high integrity impact (I:H) is accurate: successful exploitation enables signature forgery, potentially allowing authentication bypass in SAML implementations or document tampering in signed XML workflows. No public exploit code or active exploitation confirmed at time of analysis. SSVC assessment suggests deferred priority: not automatable at scale (requires knowledge of target's Go version and goxmldsig usage), technical impact limited to efficient manipulation of authentication/authorization decisions. Primary risk is to organizations using older Go toolchains with SAML or XML signing implementations-these should prioritize patching. Organizations on Go 1.22+ with updated go.mod files are inherently protected even without library upgrade.

Exploit ScenarioDerived

An attacker crafts a malicious SAML assertion containing multiple Reference elements in the SignedInfo block, where the first reference points to a legitimate assertion with restricted permissions and the second reference points to an attacker-controlled assertion granting administrative access. Due to the loop variable capture bug, the validation logic processes all references but ultimately validates against only the last reference in the list. The attacker's manipulated assertion passes signature validation despite the signature actually covering different content, enabling authentication bypass and privilege escalation in federated SSO environments.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – Apr 20, 2026

XML Digital Signature validation in russellhaering/goxmldsig library prior to version 1.6.0 can be bypassed due to a Go loop variable capture bug, allowing remote unauthenticated attackers to forge or manipulate XML signatures without detection. The vulnerability affects applications using Go versions before 1.22 or older go.mod configurations, enabling integrity violations in SAML authentication, document signing, and other XML-DSig implementations. EPSS score of 0.02% suggests low observed exploitation probability, with no confirmed active exploitation (not in CISA KEV). Vendor patch available in version 1.6.0.

Earlier versions of this analysis (1)
v1 Mar 26, 2026 - 17:45 CVSS 7.5

XML Digital Signature validation in the russellhaering/goxmldsig Go library can be bypassed due to a loop variable capture bug affecting versions prior to 1.6.0. Unauthenticated remote attackers can exploit this flaw to manipulate signature validation by crafting XML documents with multiple references in the SignedInfo block, causing the validator to use the wrong reference and accept invalid signatures. The CVSS score of 7.5 reflects high integrity impact with network attack vector and low complexity (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N), though no public exploit has been identified at time of analysis.

RemediationAI

Upgrade goxmldsig to version 1.6.0 or later, which contains a fix for the loop variable capture issue. Obtain the patched version from https://github.com/russellhaering/goxmldsig/security/advisories/GHSA-479m-364c-43vc. For SUSE environments, apply SUSE-SU-2026:1205 update available at https://www.suse.com/support/update/SUSE-SU-2026:1205/. Alternative mitigation: upgrade Go compiler to version 1.22 or later AND update go.mod to specify go 1.22+, which resolves the underlying language-level loop variable semantics issue even without library upgrade-however, this approach requires careful testing of the entire application codebase for compatibility. If immediate patching is not feasible, implement defense-in-depth controls: add explicit signature reference validation logic in application code that verifies each reference ID matches exactly one element before accepting signatures, treat signature validation failures conservatively by rejecting ambiguous or multi-match scenarios rather than defaulting to acceptance, and enable verbose logging of signature validation processes to detect potential exploitation attempts. Note that compensating controls add code complexity and may impact performance of high-volume XML processing pipelines. Monitor SAML authentication logs for anomalies such as unexpected successful authentications or duplicate reference IDs in signed assertions.

Affected Packages

go github.com/russellhaering/goxmldsig fix: 1.6.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in go

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability stems from a classic Go loop variable capture issue in the validateSignature function. In Go versions before 1.22, taking the address of a loop variable (&_ref) inside the loop creates a pointer that references the loop variable's memory location rather than the value at each iteration. Consequently, after the loop completes, all captured pointers point to the final element in the SignedInfo.References slice. This affects XML Digital Signature (XMLDSig) validation, a W3C standard used to cryptographically sign and verify XML documents. The CWE-347 classification (Improper Verification of Cryptographic Signature) accurately captures the root cause: the signature validation logic fails to correctly match references to signed elements, allowing an attacker to craft XML documents where the signature appears valid but references wrong or manipulated content. This impacts applications using goxmldsig for SAML assertions, signed XML documents, or federated authentication systems where signature integrity is critical for trust decisions.

Know when Jwt Attack gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
SUSE HIGH
Red Hat 7.5 HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
None

Lifecycle Timeline

3
Analysis Updated
Apr 20, 2026 - 14:28 vuln.today
v2 - CVSS changed
Patch released
Mar 31, 2026 - 21:13 nvd
Patch available
CVE Published
Mar 26, 2026 - 17:17 nvd
HIGH 7.5

DescriptionCVE.org

goxmlsig provides XML Digital Signatures implemented in Go. Prior to version 1.6.0, the validateSignature function in validate.go goes through the references in the SignedInfo block to find one that matches the signed element's ID. In Go versions before 1.22, or when go.mod uses an older version, there is a loop variable capture issue. The code takes the address of the loop variable _ref instead of its value. As a result, if more than one reference matches the ID or if the loop logic is incorrect, the ref pointer will always end up pointing to the last element in the SignedInfo.References slice after the loop. goxmlsig version 1.6.0 contains a patch.

Executive ViewAI

Why It Matters

The goxmldsig library versions prior to 1.6.0 contain a critical XML Digital Signature validation bypass that allows unauthenticated attackers to forge or manipulate XML signatures, directly compromising the integrity of SAML authentication, document signing, and other cryptographic verification controls. Any organization using this library-particularly those relying on XML-DSig for identity federation, document authenticity, or transaction signing-faces a critical risk of signature spoofing and unauthorized access.

Business Impact: High
Compensating Controls

Apply vendor patch. Until patched: implement strict input validation and schema enforcement on all XML signatures; enforce mutual TLS (mTLS) for critical XML-DSig operations; monitor authentication logs for anomalies; restrict SAML and document signing functionality to authenticated internal networks only if business logic permits.

Threat Intelligence Overview

EPSS Score
0.0%
Top 95% exploitable
Data Quality
7 sources
Confidence: High
NVD CVE.org EPSS Vulnrichment Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Affected Products (CPE)CVE.org

cpe:2.3:a:russellhaering:goxmldsig:*:*:*:*:*:*:*:*
CVE-2013-3900 MEDIUM
5.5 Dec 11

Why is Microsoft republishing a CVE from 2013? We are republishing CVE-2013-3900 in the Security Update Guide to update

CVE-2026-48558 CRITICAL POC
9.5 Jun 12

Authentication bypass in SimpleHelp 5.5.15 and prior (plus 6.0 pre-release builds) allows remote unauthenticated attacke

CVE-2026-5430 CRITICAL POC
10.0 Aug 06

Authentication bypass in WSO2 API Manager and related components (Universal Gateway, Traffic Manager, API Control Plane,

CVE-2025-59718 CRITICAL
9.8 Dec 09

Authentication bypass in Fortinet FortiOS, FortiProxy, and FortiSwitchManager allows unauthenticated remote attackers to

CVE-2025-25291 CRITICAL POC
9.3 Mar 12

ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. Rated critical severity (CVS

CVE-2026-47304 CRITICAL POC
9.8 Jul 14

Security feature bypass in Microsoft .NET (shipped via Visual Studio 2022 17.12/17.14 and Visual Studio 2026 18.7) lets

CVE-2025-25292 CRITICAL POC
9.3 Mar 12

ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. Rated critical severity (CVS

CVE-2022-25898 CRITICAL POC
9.8 Jul 01

The package jsrsasign before 10.5.25 are vulnerable to Improper Verification of Cryptographic Signature when JWS or JWT

CVE-2026-107722 CRITICAL POC
9.8 Oct 08

Authentication and authorization bypass in fast-jwt 6.2.0 through 6.2.4 (npm, NearForm) lets a remote, unauthenticated a

CVE-2024-42004 CRITICAL POC
9.8 Dec 18

A library injection vulnerability exists in Microsoft Teams (work or school) 24046.2813.2770.1094 for macOS. Rated criti

CVE-2024-41145 CRITICAL POC
9.8 Dec 18

A library injection vulnerability exists in the WebView.app helper app of Microsoft Teams (work or school) 24046.2813.27

CVE-2024-41138 CRITICAL POC
9.8 Dec 18

A library injection vulnerability exists in the com.microsoft.teams2.modulehost.app helper app of Microsoft Teams (work

Vendor StatusVendor

SUSE

Severity: High

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy