Miggo Logo

CVE-2020-2113: Jenkins Git Parameter Plugin vulnerable to stored cross-site scripting (XSS)

5.4

CVSS Score
3.1

Basic Information

EPSS Score
0.32165%
Published
5/24/2022
Updated
12/13/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.jenkins-ci.tools:git-parametermaven<= 0.9.110.9.12

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability arises from improper escaping of user-controlled values (parameter name and default value) in the UI. The commit diff shows critical fixes: 1) In GitParameterDefinition.java, getDivUUID originally used unsanitized names for div IDs, risking DOM-based XSS. 2) In git-parameter.js, the QuickFilter constructor directly injected defaultValue into JavaScript without escaping, enabling script execution. The patch mitigates these by sanitizing the name and using data attributes to safely pass values. These functions directly handled untrusted input without proper escaping, making them the root causes.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

J*nkins *it P*r*m*t*r Plu*in *.*.** *n* **rli*r *o*s not *s**p* t** ****ult v*lu* s*own on t** UI, r*sultin* in * stor** *ross-sit* s*riptin* vuln*r**ility *xploit**l* *y us*rs wit* Jo*/*on*i*ur* p*rmission.

Reasoning

T** vuln*r**ility *ris*s *rom improp*r *s**pin* o* us*r-*ontroll** v*lu*s (p*r*m*t*r n*m* *n* ****ult v*lu*) in t** UI. T** *ommit *i** s*ows *riti**l *ix*s: *) In `*itP*r*m*t*r***inition.j*v*`, `**t*ivUUI*` ori*in*lly us** uns*nitiz** n*m*s *or *iv