CVE-2023-40584:
Argo CD repo-server Denial of Service vulnerability
6.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.594%
CWE
Published
9/11/2023
Updated
11/10/2023
KEV Status
No
Technology
Go
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
github.com/argoproj/argo-cd/v2 | go | >= 2.4.0, < 2.6.15 | 2.6.15 |
github.com/argoproj/argo-cd/v2 | go | >= 2.7.0, < 2.7.14 | 2.7.14 |
github.com/argoproj/argo-cd/v2 | go | >= 2.8.0, < 2.8.3 | 2.8.3 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from uncontrolled resource consumption during tar.gz
extraction. The key commit (b8f92c4) adds size validation
to Helm
chart extraction in util/helm/client.go
's ExtractChart
function. The patched version introduces 'untarChart' with size checks using files.Untgz
, while the vulnerable version used a simple 'tar -zxvf' without validation
. The repository.go
's runRepoOperation()
function was modified to pass new size limit parameters to ExtractChart
, indicating it previously called the vulnerable version without these safeguards. These changes directly address the CWE-400
vulnerability described, making these functions the root cause.