Miggo Logo

CVE-2024-28175:
Cross-site scripting on application summary component

9.1

CVSS Score
3.1

Basic Information

EPSS Score
0.5687%
Published
3/15/2024
Updated
5/20/2024
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/argoproj/argo-cd/v2go>= 2.9.0, < 2.9.82.9.8
github.com/argoproj/argo-cd/v2go>= 2.10.0, < 2.10.32.10.3
github.com/argoproj/argo-cd/v2go>= 2.0.0, < 2.8.122.8.12
github.com/argoproj/argo-cdgo>= 1.0.0, <= 1.8.7

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot 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.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

### Summ*ry *u* to t** improp*r URL proto*ols *ilt*rin* o* links sp**i*i** in t** `link.*r*o**.*r*oproj.io` *nnot*tions in t** *ppli**tion summ*ry *ompon*nt, *n *tt**k*r **n ***i*v* *ross-sit* s*riptin* wit* *l*v*t** p*rmissions. ### Imp**t *ll un

Reasoning

T** vuln*r**ility st*ms *rom two k*y points: *) T** *xt*rn*lLink *onstru*tor in *ppli**tion-urls.tsx ori*in*lly *i*n't v*li**t* URL proto*ols, *llowin* inj**tion o* j*v*s*ript: links. T** p*t** ***** v*li**tion t**t t*rows *rrors *or uns*** proto*ols