CVE-2017-3156: High severity Apache CXF vulnerability
Apache CXF OAuth2 Hawk and JOSE MAC Validation code is not using a constant time MAC signature comparison algorithm which may be exploited by some sophisticated timing attacks. It may only affect OAuth2 Hawk or JWT access tokens or JOSE JWS/JWE interceptors which depend on HMac secret key algorithms.
This vulnerability affects all versions of Apache CXF prior to 3.0.13, 3.1.10.
Upstream patches:
CXF 3.1.x: http://git-wip-us.apache.org/repos/asf/cxf/commit/555843f9
CXF 3.0.x http://git-wip-us.apache.org/repos/asf/cxf/commit/1338469f
CXF 3.2.0-SNAPSHOT (master): http://git-wip-us.apache.org/repos/asf/cxf/commit/e66ce235
External References:
https://cxf.apache.org/security-advisories.data/CVE-2017-3156.txt.asc
Other sources
The OAuth2 Hawk and JOSE MAC Validation code in Apache CXF prior to 3.0.13 and 3.1.x prior to 3.1.10 is not using a constant time MAC signature comparison algorithm which may be exploited by sophisticated timing attacks.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
maven/org.apache.cxf.karaf:apache-cxfto a version that resolves this vulnerability.Fixed in 3.1.10 - Upgrade
Upgrade
maven/org.apache.cxf.karaf:apache-cxfto a version that resolves this vulnerability.Fixed in 3.0.13 - Upgrade
Upgrade
redhat/cxfto a version that resolves this vulnerability.Fixed in 3.0.13 - Upgrade
Upgrade
redhat/cxfto a version that resolves this vulnerability.Fixed in 3.1.10 - Upgrade
Upgrade
Apache CXF OAuth2 Hawk and JOSE MAC Validationto a version that resolves this vulnerability.Fixed in 3.0.13 - Upgrade
Upgrade
Apache CXF OAuth2 Hawk and JOSE MAC Validationto a version that resolves this vulnerability.Fixed in 3.1.10 - Compensating control
If you are using OAuth2 Hawk or JOSE MAC validation (HMac secret key algorithms) or JOSE JWS/JWE interceptors, mitigate exposure to timing attacks until CXF is upgraded (e.g., limit access to token validation endpoints and avoid exposing detailed timing differences to untrusted clients).
Event History
Frequently Asked Questions
What is the severity of CVE-2017-3156?
The severity of CVE-2017-3156 is considered moderate due to its potential exploitation in timing attacks.
How do I fix CVE-2017-3156?
To fix CVE-2017-3156, upgrade Apache CXF to version 3.1.10 or 3.0.13.
Which versions of Apache CXF are affected by CVE-2017-3156?
Versions of Apache CXF from 3.1.0 to 3.1.9 and from 3.0.0 to 3.0.12 are affected by CVE-2017-3156.
What kind of attack can CVE-2017-3156 lead to?
CVE-2017-3156 may lead to sophisticated timing attacks on OAuth2 Hawk and JOSE MAC validation.
Is CVE-2017-3156 related to OAuth2 tokens?
Yes, CVE-2017-3156 specifically affects OAuth2 Hawk or JWT access tokens and JOSE JWS/JWE interceptors.