GitHub Advisoryadvisory · Maven

GHSA-7q4h-pj78-j7vg Authorization service vulnerable to DDos attacks in Apache CFX

HIGH Published 2021-05-13 Modified 2021-10-21 Official page ↗
Aliases
CVE-2021-22696
Ecosystem
Maven
Packages
org.apache.cxf:cxf, org.apache.cxf:apache-cxf
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-400, CWE-918
Reviewed
2021-04-05

Affected packages

• Maven org.apache.cxf:cxf: >= 3.4.0, < 3.4.3 → fixed in 3.4.3 • Maven org.apache.cxf:cxf: < 3.3.10 → fixed in 3.3.10 • Maven org.apache.cxf:apache-cxf: >= 3.4.0, < 3.4.3 → fixed in 3.4.3 • Maven org.apache.cxf:apache-cxf: < 3.3.10 → fixed in 3.3.10

Description

CXF supports (via JwtRequestCodeFilter) passing OAuth 2 parameters via a JWT token as opposed to query parameters (see: The OAuth 2.0 Authorization Framework: JWT Secured Authorization Request (JAR)). Instead of sending a JWT token as a "request" parameter, the spec also supports specifying a URI from which to retrieve a JWT token from via the "request_uri" parameter. CXF was not validating the "request_uri" parameter (apart from ensuring it uses "https) and was making a REST request to the parameter in the request to retrieve a token. This means that CXF was vulnerable to DDos attacks on the authorization server, as specified in section 10.4.1 of the spec. This issue affects Apache CXF versions prior to 3.4.3; Apache CXF versions prior to 3.3.10.

Related

Alias · CVE (1)

  • CVE-2021-22696 CXF supports (via JwtRequestCodeFilter) passing OAuth 2 parameters via a JWT token as opposed to query parameters (see: The OAuth 2.0… vulnerability

Weakness · CWE (2)

  • CWE-400 Uncontrolled Resource Consumption weakness
  • CWE-918 Server-Side Request Forgery weakness

References