CVE-2024-28175:
Cross-site scripting on application summary component
9.1
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.5687%
CWE
Published
3/15/2024
Updated
5/20/2024
KEV Status
No
Technology
Go
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
github.com/argoproj/argo-cd/v2 | go | >= 2.9.0, < 2.9.8 | 2.9.8 |
github.com/argoproj/argo-cd/v2 | go | >= 2.10.0, < 2.10.3 | 2.10.3 |
github.com/argoproj/argo-cd/v2 | go | >= 2.0.0, < 2.8.12 | 2.8.12 |
github.com/argoproj/argo-cd | go | >= 1.0.0, <= 1.8.7 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from two key points: 1) The ExternalLink constructor in application-urls.tsx originally didn't validate URL protocols, allowing injection of javascript: links. The patch added validation that throws errors for unsafe protocols. 2) The ApplicationSummary component directly processed user-controlled externalURLs annotations without proper sanitization, using split('|') to handle URL parts. The combination of these two factors allowed malicious links to be rendered. The commit fixes both by introducing protocol validation in ExternalLink and using the validated ExternalLinks function in ApplicationSummary.