Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify CXF service using STSTokenValidator
-
DeliveryCraft SAML assertion signed by untrusted cert
-
ExploitSend requests timed with legitimate traffic
-
ExecutionWin shared-result race window
-
PersistForged assertion accepted as trusted
-
ImpactGain unauthorized trusted access
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitable ONLY against Apache CXF services that use STSTokenValidator to validate SAML tokens with alwaysValidateToSts NOT set - that specific configuration is the precondition, so configurations that always forward to the STS are not affected. Exploitation further requires a race window: the attacker's forged assertion must be processed concurrently with a legitimate request whose trust-check succeeded, since the flaw is reading another request's result from a shared object. Limiting factors: dependence on this non-universal SAML/STS validation mode and the probabilistic timing of concurrent legitimate traffic reduce reliability, though no authentication or user interaction is needed (PR:N/UI:N). |
| Impact | Multiple signals point to a moderate, non-urgent priority. The NVD CVSS is 7.5 (AV:N/AC:L/PR:N/UI:N) implying trivially remote, unauthenticated exploitation, but the CWE-362 race-condition nature means real exploitation depends on winning a timing window against concurrent legitimate requests, which is better captured by AC:H than AC:L - the provided AC:L likely understates attack complexity. EPSS is low at 0.17% (6th percentile) and the flaw is NOT in CISA KEV, with no public exploit identified at time of analysis, so there is no evidence of active or widespread exploitation. A notable conflict: the published vector sets C:N/I:N/A:H (availability-only), yet the description describes a forged, untrusted-certificate-signed SAML assertion being accepted as trusted - that is an authentication/integrity bypass, not an availability loss. This impact mislabeling should be verified with the vendor advisory; if the integrity reading is correct, the true risk is unauthorized trust of forged tokens rather than denial of service. Net: a legitimately exploitable auth-validation flaw but gated by a narrow vulnerable configuration and a race window, so prioritize patching for affected SAML/STS deployments without treating it as an emergency. |
| Exploit ScenarioDerived | An attacker repeatedly sends SAML assertions forged and signed with an untrusted certificate to a CXF service that uses STSTokenValidator without alwaysValidateToSts, timing them to coincide with legitimate requests being processed. Because the trust-check result is held in a single shared object, the attacker's request can read a concurrent legitimate request's 'trusted' result and have its forged assertion accepted without ever being sent to the STS. No public exploit code is identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Oct 15, 2026
Trust bypass in Apache CXF's STSTokenValidator allows a remote, unauthenticated attacker to have a forged SAML assertion signed with an untrusted certificate accepted as trusted without the assertion ever being validated by the Security Token Service. Only deployments that use STSTokenValidator to validate SAML tokens while leaving alwaysValidateToSts unset are affected, and exploitation additionally requires a race window in which the result of a concurrent legitimate request's successful trust check is read from shared state. No public exploit code or CISA KEV listing has been identified at time of analysis, EPSS is 0.17% (6th percentile), and vendor fixes are available in Apache CXF 4.2.4, 4.1.9 and 3.6.13.
Earlier versions of this analysis (1)
Apache CXF's STSTokenValidator can accept a forged SAML assertion signed with an untrusted certificate if it is submitted concurrently with legitimate trusted-signature validation traffic, because the validation result is stored in a shared object rather than per request. This race condition only affects services that use STSTokenValidator to validate SAML tokens without the alwaysValidateToSts option set; exploitation is non-deterministic and requires winning a timing window against live concurrent trusted requests. No public exploit has been identified at time of analysis; the vendor describes a remote, unauthenticated attack, but authentication requirements are not confirmed from available data, and the assessed CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) indicates high confidentiality and integrity impact with no availability impact.
RemediationAI
Upgrade to a fixed release: Apache CXF 4.2.4, 4.1.9, or 3.6.13 depending on the branch in use - vendor-released patch: 4.2.4, 4.1.9 and 3.6.13, with details in the Apache advisory at https://lists.apache.org/thread.html/ssdr417qgms9fjl0m8802xd8170wnk1l and the oss-security thread at https://seclists.org/oss-sec/2026/q4/112. Where an immediate upgrade is not possible, the most direct compensating control is to set alwaysValidateToSts so that every SAML assertion is forwarded to the STS for validation and the shared, stale trust-check result can no longer be relied upon; the trade-off is added STS round-trips, higher latency, and a hard dependency on STS availability, so STS capacity and failover should be checked first. Organizations that do not actually consume WS-Trust/SAML tokens can instead stop wiring STSTokenValidator into the validation chain or keep the affected endpoints off untrusted networks, accepting the loss of legitimate SAML-based authentication on those paths. Because the flaw is a cross-request race in shared state, per-node thread-level mitigations are unreliable; note also that no compensating control removes the need to patch, and no public exploit code has been observed so far, which lowers - but does not eliminate - the urgency of scheduled upgrade work.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Apache CXF is a Java framework for building and consuming SOAP/REST web services, and its WS-Trust support includes STSTokenValidator, a component used when CXF acts as or interoperates with a Security Token Service (STS) to validate SAML assertions. STSTokenValidator's job is to decide whether an incoming SAML assertion is signed by a trusted certificate before forwarding (or not forwarding) it to the STS for validation. The root cause is CWE-362 (Race Condition): the boolean outcome of that trust check was stored in a single object shared across all requests instead of being kept per-invocation, so one request could observe the trust decision produced by a different request. Because the shared object is reachable from concurrent request-handling threads, an attacker who sends a forged assertion signed with an untrusted certificate while legitimate traffic with a successful trust check is in flight can have that forged assertion treated as trusted and accepted without ever reaching the STS. CPE data (cpe:2.3:a:apache_software_foundation:apache_cxf:*:*:*:*:*:*:*:*) shows the flaw spans the CXF line generally, with EUVD bounding it as versions 0 through <3.6.13, 4.0.0 through <4.1.9, and 4.2.0 through <4.2.4. Our assessment rates this CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N, with the high complexity reflecting the timing-dependent race and the high confidentiality and integrity impact reflecting both the forged-token acceptance and the cross-request disclosure of another request's validation result; NVD's published 7.5 (C:N/I:N/A:H) framing focuses on availability and should be weighed alongside the trust-bypass semantics above.
Know when Apache Cxf 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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Remote unauthenticated (AV:N/PR:N) but AC:H for the race window; impact is trust bypass accepting forged tokens (C:H/I:H), not availability, so A:N despite the input's A:H.
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
Lifecycle Timeline
3DescriptionCVE.org
In Apache CXF, STSTokenValidator checks whether a SAML assertion is signed by a trusted certificate before deciding to send it to the STS. That result was stored in one object shared by all requests, so one request could read another's result. A remote, unauthenticated attacker could send a forged assertion signed with an untrusted certificate while legitimate requests were being processed, and it could be accepted as trusted without ever reaching the STS. Only services that use STSTokenValidator to validate SAML tokens without alwaysValidateToSts set are affected. Users are recommended to upgrade to versions 4.2.4 or 4.1.9 or 3.6.13, which fix this issue.
Articles & Coverage 2
Executive ViewAI
Apache CXF, a widely embedded framework for service and identity federation, contains a trust-validation flaw in its STSTokenValidator component that can allow a forged SAML assertion to be accepted as legitimately trusted by systems relying on CXF for authentication decisions. Only organizations running CXF with STSTokenValidator and the alwaysValidateToSts option left unset are exposed, and successful abuse depends on timing conditions, so this is a narrow but high-consequence authentication bypass rather than a broad internet-wide exposure. Leadership should care because a bypassed trust boundary in token validation can grant unauthorized access to services that assume identity has already been verified.
Apply vendor patch.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).
More in Apache Cxf
View allArbitrary certificate disclosure in Apache CXF's XKMS server lets remote attackers abuse an LDAP injection flaw (CWE-90)
Unsafe deserialization in Apache CXF's JMS transport allows any party able to publish to the service's JMS destination t
Token validation bypass in Apache CXF's STSTokenValidator and Security Token Service (STS) allows unauthenticated remote
Man-in-the-middle attackers can impersonate any TLS server contacted by Apache CXF's optional Netty-based HTTP client tr
XML signature wrapping in Apache CXF's JAX-RS XML Security module allows remote, unauthenticated attackers to have unsig
A remote, unauthenticated attacker can exhaust server heap memory in Apache CXF by submitting a small (kilobyte-scale) D
Remote code execution in Apache CXF (versions before 3.6.11, 4.0.0-4.1.5, and 4.2.0) arises because the fix for CVE-2025
XML External Entity injection in Apache CXF's WSDL import processing allows attackers who can influence imported WSDL or
Denial of service persists in Apache CXF due to an incomplete remediation of CVE-2026-50645, allowing unauthenticated ne
Authorization scope escalation in Apache CXF's OAuth2 Dynamic Client Registration endpoint allows any registering client
Open redirect in Apache CXF's OIDC relying-party component lets remote, unauthenticated attackers steer users to an atta
XML External Entity injection in Apache CXF's WS-Transfer module exposes SOAP endpoints to server-side file read and int
EUVD-2026-95700
GHSA-2rg8-47cf-hp2j
NVD
CVE.org
EPSS
VulDB
Exploit-DB