// For flags

CVE-2024-4536

Eclipse EDC: OAuth2 Credential Exfiltration Vulnerability

Severity Score

6.8
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track
*SSVC
Descriptions

In Eclipse Dataspace Components from version 0.2.1 to 0.6.2, in the EDC Connector component ( https://github.com/eclipse-edc/Connector ), an attacker might obtain OAuth2 client secrets from the vault.

In Eclipse Dataspace Components from version 0.2.1 to 0.6.2, we have identified a security vulnerability in the EDC Connector component ( https://github.com/eclipse-edc/Connector ) regarding the OAuth2-protected data sink feature. When using a custom, OAuth2-protected data sink, the OAuth2-specific data address properties are resolved by the provider data plane. Problematically, the consumer-provided clientSecretKey, which indicates the OAuth2 client secret to retrieve from a secrets vault, is resolved in the context of the provider's vault, not the consumer. This secret's value is then sent to the tokenUrl, also consumer-controlled, as part of an OAuth2 client credentials grant. The returned access token is then sent as a bearer token to the data sink URL.

This feature is now disabled entirely, because not all code paths necessary for a successful realization were fully implemented.

En los componentes de Eclipse Dataspace de la versión 0.2.1 a 0.6.2, en el componente EDC Connector (https://github.com/eclipse-edc/Connector), un atacante podría obtener secretos del cliente OAuth2 de la bóveda. En los componentes de Eclipse Dataspace de la versión 0.2.1 a 0.6.2, hemos identificado una vulnerabilidad de seguridad en el componente EDC Connector (https://github.com/eclipse-edc/Connector) con respecto a la función de receptor de datos protegido por OAuth2. Cuando se utiliza un receptor de datos personalizado protegido por OAuth2, el plano de datos del proveedor resuelve las propiedades de dirección de datos específicas de OAuth2. Lo problemático es que la clientSecretKey proporcionada por el consumidor, que indica el secreto del cliente OAuth2 para recuperar de una bóveda de secretos, se resuelve en el contexto de la bóveda del proveedor, no en el del consumidor. Luego, el valor de este secreto se envía a tokenUrl, también controlado por el consumidor, como parte de una concesión de credenciales de cliente OAuth2. El token de acceso devuelto se envía luego como token de portador a la URL del receptor de datos. Esta característica ahora está completamente deshabilitada porque no se implementaron completamente todas las rutas de código necesarias para una realización exitosa.

*Credits: sovity GmbH
CVSS Scores
Attack Vector
Adjacent
Attack Complexity
High
Privileges Required
High
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
Low
Availability
Low
* Common Vulnerability Scoring System
SSVC
  • Decision:Track
Exploitation
None
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-05-06 CVE Reserved
  • 2024-05-07 CVE Published
  • 2024-05-08 EPSS Updated
  • 2024-08-01 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-201: Insertion of Sensitive Information Into Sent Data
  • CWE-522: Insufficiently Protected Credentials
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Eclipse Foundation
Search vendor "Eclipse Foundation"
EDC
Search vendor "Eclipse Foundation" for product "EDC"
>= 0.2.1 <= 0.6.2
Search vendor "Eclipse Foundation" for product "EDC" and version " >= 0.2.1 <= 0.6.2"
en
Affected