Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessPosition to intercept OAuth redirect
-
DeliveryCapture authorization code from HTTP traffic or logs
-
ExploitReplay code to CXF token endpoint
-
ExecutionReceive valid access token
-
PersistRepeat exchange for additional tokens
-
ImpactAccess protected resources as victim
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Replay attack prevention
|
| Exploitation Conditions | Exploitation requires that the target Apache CXF instance is deployed as an OAuth 2.0 authorization server using the DefaultEncryptingCodeDataProvider class specifically. Deployments that use alternative code providers or that do not implement the authorization code grant flow are not affected. An attacker must first obtain a valid, unexpired authorization code issued to a legitimate user - this typically requires network interception, access to server/proxy logs that record authorization code values, or exploitation of HTTP referrer header leakage from redirect URIs. Exploitation is limited to the authorization code grant type; client credentials, implicit, and resource owner password grants are not affected by this flaw. The victim user must have initiated an OAuth authorization flow to generate the code in the first place. |
| Impact | No CVSS score or vector was provided in the source data, so risk must be inferred from the description and CWE. The exploit requires the attacker to first capture a valid authorization code - a non-trivial prerequisite that implies high attack complexity (e.g., network interception, MITM position, log access, or referrer header leakage). User interaction is required because a legitimate user must initiate the OAuth flow to generate the code. Once a code is captured, however, exploitation is straightforward and repeatable, requiring no further privileges. The confidentiality impact is high, as repeated token issuance can grant sustained unauthorized access to protected resources. EPSS data is not available in the provided intelligence. No CISA KEV listing exists. No public POC or exploit code has been identified. The net assessment is moderate-to-high real-world risk for deployments using Apache CXF as an OAuth 2.0 authorization server, particularly in environments where authorization codes traverse less-than-fully-trusted channels (proxies, logging pipelines). The risk is substantially lower for deployments using CXF only as a web service client or non-OAuth server. |
| Exploit ScenarioDerived | An attacker positioned to observe OAuth 2.0 traffic - via a shared network, a misconfigured proxy that logs query parameters, or HTTP referrer header leakage from a redirect URI - captures a victim's authorization code during a legitimate login flow. The attacker then exchanges this code at the CXF token endpoint to obtain a valid access token; because removeCodeGrant() does not properly invalidate the code, the attacker can repeat this exchange to obtain multiple tokens, maintaining unauthorized access even after the original token expires. No public POC has been identified, but the technique is well-understood within standard OAuth 2.0 attack research. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 06, 2026
Apache CXF's DefaultEncryptingCodeDataProvider allows captured OAuth 2.0 authorization codes to be redeemed an unlimited number of times, violating RFC 6749's single-use requirement. The removeCodeGrant() method that should invalidate a code after first exchange fails to do so, meaning any attacker who intercepts or obtains a legitimate authorization code can replay it repeatedly to obtain additional access tokens. No public exploit has been identified at time of analysis, and the issue is addressed in patched releases 4.2.3, 4.1.8, and 3.6.12.
RemediationAI
Upgrade Apache CXF to version 4.2.3, 4.1.8, or 3.6.12 depending on the branch in use - these are the vendor-confirmed fixed releases per the Apache advisory at https://lists.apache.org/thread/6m06gdqz4rxhy9g90qz9lyqx2gqmf13o. If immediate upgrade is not feasible, deployments can mitigate by replacing DefaultEncryptingCodeDataProvider with a custom implementation that enforces single-use codes, at the cost of additional development and testing effort. Alternatively, rotating to short-lived authorization codes with very narrow expiry windows (e.g., 30-60 seconds) reduces the replay window but does not eliminate the underlying flaw. Enabling strict TLS with certificate pinning between authorization clients and the CXF server reduces code interception risk but does not fix the reuse vulnerability. Note that workarounds do not substitute for patching, as the root cause in removeCodeGrant() persists until the fixed version is deployed.
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 (CPE: cpe:2.3:a:apache_software_foundation:apache_cxf:*:*:*:*:*:*:*:*) is a widely used open-source Java framework for building SOAP and RESTful web services, including OAuth 2.0 authorization server implementations. The DefaultEncryptingCodeDataProvider class handles encrypted storage and lifecycle management of OAuth 2.0 authorization codes. Per RFC 6749 Section 4.1.2, an authorization code MUST be single-use; the authorization server must reject any reuse attempt. The flaw lies in the removeCodeGrant() method, which is responsible for expiring/invalidating the code once it has been exchanged for an access token. CWE-294 (Authentication Bypass by Capture-replay) applies: the code is not invalidated, allowing it to be replayed. An attacker who gains possession of the code through interception, log exposure, browser history, HTTP referrer leakage, or other means can reuse it to obtain multiple access tokens for the victim's account.
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:H/I:H/A:H
Network vector, high complexity due to prerequisite code capture; user interaction required to generate the code; no availability impact.
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
Lifecycle Timeline
1DescriptionCVE.org
In Apache CXF's DefaultEncryptingCodeDataProvider, a captured authorization code can be redeemed an unlimited number of times due to a flaw in the implementation of the removeCodeGrant functionality. This violates the RFC requirement that "The authorization code MUST NOT be used more than once." Users are recommended to upgrade to versions 4.2.3 or 4.1.8 or 3.6.12, which fix this issue.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Apache Cxf
View allUnsafe deserialization in Apache CXF's JMS transport allows any party able to publish to the service's JMS destination t
Arbitrary certificate disclosure in Apache CXF's XKMS server lets remote attackers abuse an LDAP injection flaw (CWE-90)
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 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
XML signature wrapping in Apache CXF's JAX-RS XML Security module allows remote, unauthenticated attackers to have unsig
Trust bypass in Apache CXF's STSTokenValidator allows a remote, unauthenticated attacker to have a forged SAML assertion
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
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
EUVD-2026-53858
GHSA-7mxw-qv85-693m
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB