// For flags

CVE-2024-37904

Denial of service from maliciously configured Git repository in Minder

Severity Score

5.7
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track
*SSVC
Descriptions

Minder is an open source Software Supply Chain Security Platform. Minder's Git provider is vulnerable to a denial of service from a maliciously configured GitHub repository. The Git provider clones users repositories using the `github.com/go-git/go-git/v5` library on lines `L55-L89`. The Git provider does the following on the lines `L56-L62`. First, it sets the `CloneOptions`, specifying the url, the depth etc. It then validates the options. It then sets up an in-memory filesystem, to which it clones and Finally, it clones the repository. The `(g *Git) Clone()` method is vulnerable to a DoS attack: A Minder user can instruct Minder to clone a large repository which will exhaust memory and crash the Minder server. The root cause of this vulnerability is a combination of the following conditions: 1. Users can control the Git URL which Minder clones, 2. Minder does not enforce a size limit to the repository, 3. Minder clones the entire repository into memory. This issue has been addressed in commit `7979b43` which has been included in release version v0.0.52. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Minder es una plataforma de seguridad de la cadena de suministro de software de código abierto. El proveedor Git de Minder es vulnerable a una denegación de servicio desde un repositorio GitHub configurado maliciosamente. El proveedor de Git clona los repositorios de los usuarios utilizando la librería `github.com/go-git/go-git/v5` en las líneas `L55-L89`. El proveedor de Git hace lo siguiente en las líneas "L56-L62". Primero, establece `CloneOptions`, especificando la URL, la profundidad, etc. Luego valida las opciones. Luego configura un sistema de archivos en memoria, al cual clona y, finalmente, clona el repositorio. El método `(g *Git) Clone()` es vulnerable a un ataque DoS: un usuario de Minder puede indicarle a Minder que clone un repositorio grande que agotará la memoria y bloqueará el servidor de Minder. La causa principal de esta vulnerabilidad es una combinación de las siguientes condiciones: 1. Los usuarios pueden controlar la URL de Git que Minder clona, 2. Minder no impone un límite de tamaño al repositorio, 3. Minder clona todo el repositorio en la memoria. Este problema se solucionó en el commit `7979b43` que se incluyó en la versión v0.0.52. Se recomienda a los usuarios que actualicen. No se conocen workarounds para esta vulnerabilidad.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
* Common Vulnerability Scoring System
SSVC
  • Decision:Track
Exploitation
None
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-06-10 CVE Reserved
  • 2024-06-18 CVE Published
  • 2024-06-19 EPSS Updated
  • 2024-08-02 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-400: Uncontrolled Resource Consumption
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Stacklok
Search vendor "Stacklok"
Minder
Search vendor "Stacklok" for product "Minder"
< 0.0.52
Search vendor "Stacklok" for product "Minder" and version " < 0.0.52"
en
Affected