CVE-2021-21628: Stored XSS vulnerability in Jenkins Build With Parameters Plugin
5.4
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.78495%
CWE
Published
5/24/2022
Updated
12/19/2023
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.jenkins-ci.plugins:build-with-parameters | maven | <= 1.5 | 1.5.1 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from unescaped parameter names/descriptions in the plugin's UI rendering. The commit diff shows the fix adds 'escapeEntryTitleAndDescription' variable to enable escaping in Jelly templates. In vulnerable versions, the <f:entry> elements would render title=${parameter.name} and description=${parameter.description} without HTML escaping, enabling XSS payload injection. The Jelly template rendering mechanism is the vulnerable function
in this context, as template processing is responsible for proper output encoding.