CVE-2024-29893
Uncontrolled Resource Consumption vulnerability in ArgoCD's repo server
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. All versions of ArgoCD starting from v2.4 have a bug where the ArgoCD repo-server component is vulnerable to a Denial-of-Service attack vector. Specifically, it's possible to crash the repo server component through an out of memory error by pointing it to a malicious Helm registry. The loadRepoIndex() function in the ArgoCD's helm package, does not limit the size nor time while fetching the data. It fetches it and creates a byte slice from the retrieved data in one go. If the registry is implemented to push data continuously, the repo server will keep allocating memory until it runs out of it. A patch for this vulnerability has been released in v2.10.3, v2.9.8, and v2.8.12.
Argo CD es una herramienta declarativa de entrega continua de GitOps para Kubernetes. Todas las versiones de ArgoCD a partir de la v2.4 tienen un error por el cual el componente del servidor de repositorio de ArgoCD es vulnerable a un vector de ataque de denegación de servicio. Específicamente, es posible bloquear el componente del servidor de repositorio debido a un error de falta de memoria al señalarlo a un registro de Helm malicioso. La función loadRepoIndex() en el paquete helm de ArgoCD no limita el tamaño ni el tiempo al recuperar los datos. Lo recupera y crea un segmento de bytes a partir de los datos recuperados de una sola vez. Si el registro se implementa para enviar datos continuamente, el servidor de repositorio seguirá asignando memoria hasta que se agote. Se lanzó un parche para esta vulnerabilidad en las versiones 2.10.3, 2.9.8 y 2.8.12.
The ArgoCD repo-server component is vulnerable to a denial of service attack, where it is possible to crash the repo server component through an out-of-memory error by pointing it to a malicious Helm registry. The loadRepoIndex() function in the ArgoCD's helm package does not limit the size or time while fetching the data. It fetches and creates a byte slice from the retrieved data in one go. If the registry is implemented to push data continuously, the repo server will keep allocating memory until it runs out.
CVSS Scores
SSVC
- Decision:Track
Timeline
- 2024-03-21 CVE Reserved
- 2024-03-29 CVE Published
- 2024-03-30 EPSS Updated
- 2024-08-02 CVE Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-400: Uncontrolled Resource Consumption
CAPEC
References (6)
URL | Tag | Source |
---|---|---|
https://github.com/argoproj/argo-cd/commit/14f681e3ee7c38731943b98f92277e88a3db109d | X_refsource_misc | |
https://github.com/argoproj/argo-cd/commit/36b8a12a38f8d92d55bffc81deed44389bf6eb59 | X_refsource_misc | |
https://github.com/argoproj/argo-cd/commit/3e5a878f6e30d935fa149723ea2a2e93748fcddd | X_refsource_misc | |
https://github.com/argoproj/argo-cd/security/advisories/GHSA-jhwx-mhww-rgc3 | X_refsource_confirm |
URL | Date | SRC |
---|
URL | Date | SRC |
---|
URL | Date | SRC |
---|---|---|
https://access.redhat.com/security/cve/CVE-2024-29893 | 2024-04-10 | |
https://bugzilla.redhat.com/show_bug.cgi?id=2272211 | 2024-04-10 |
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Argoproj Search vendor "Argoproj" | Argo-cd Search vendor "Argoproj" for product "Argo-cd" | >= 2.4.0 < 2.8.14 Search vendor "Argoproj" for product "Argo-cd" and version " >= 2.4.0 < 2.8.14" | en |
Affected
| ||||||
Argoproj Search vendor "Argoproj" | Argo-cd Search vendor "Argoproj" for product "Argo-cd" | >= 2.9.0 < 2.9.10 Search vendor "Argoproj" for product "Argo-cd" and version " >= 2.9.0 < 2.9.10" | en |
Affected
| ||||||
Argoproj Search vendor "Argoproj" | Argo-cd Search vendor "Argoproj" for product "Argo-cd" | >= 2.10.0 < 2.10.5 Search vendor "Argoproj" for product "Argo-cd" and version " >= 2.10.0 < 2.10.5" | en |
Affected
|