Miggo Logo

CVE-2018-1190: Pivotal Cloud Foundry UAA XSS on UAA OpenID Connect check session iframe endpoint

6.1

CVSS Score
3.0

Basic Information

EPSS Score
0.44431%
Published
5/13/2022
Updated
3/1/2024
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.cloudfoundry.identity:cloudfoundry-identity-servermaven>= 3.0.0, < 3.20.23.20.2

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from the SessionController's session method handling user-controlled input (clientId) without proper escaping. The commit diff shows the fix introduced an escape() method using JsonUtils.writeValueAsString to sanitize inputs before adding them to the model. The original vulnerable version (prior to 3.20.2) lacked this escaping, allowing XSS when these parameters were rendered in the session.html template. The template changes from '[[${clientId}]]' to [[${clientId}]] (without quotes) combined with proper escaping in the controller confirm the vulnerability was in the Java method's output handling.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

*n issu* w*s *is*ov*r** in t**s* Pivot*l *lou* *oun*ry pro*u*ts: *ll v*rsions prior to **-r*l**s* v***, U** v*.x prior to v*.**.*, *n* U** *os* v**.x v*rsions prior to v**.* *n* *ll ot**r v*rsions prior to v**.*. * *ross-sit* s*riptin* (XSS) *tt**k i

Reasoning

T** vuln*r**ility st*ms *rom t** `S*ssion*ontroll*r`'s s*ssion m*t*o* **n*lin* us*r-*ontroll** input (*li*ntI*) wit*out prop*r *s**pin*. T** *ommit *i** s*ows t** *ix intro*u*** *n `*s**p*()` m*t*o* usin* `JsonUtils.writ*V*lu**sStrin*` to s*nitiz* in