CVE-2022-30963: Cross-site Scripting in Jenkins JDK Parameter Plugin

Summary

18/05/2022
No i
High
8.0

CVE-2022-30963: Cross-site Scripting in Jenkins JDK Parameter Plugin. Affects org.jenkins-ci.plugins:JDK_Parameter_Plugin versions < 1.0. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

The Jenkins JDK Parameter Plugin is a Maven package that provides functionality for defining and managing JDK parameters in Jenkins. JDK parameters allow users to specify the JDK (Java Development Kit) version to be used for a particular build. This plugin is commonly used in Jenkins instances to configure and manage build environments. However, versions 1.0 and earlier of the plugin are vulnerable to a stored cross-site scripting (XSS) attack.

Vulnerability Detail

The vulnerability in the Jenkins JDK Parameter Plugin allows attackers with Item/Configure permission to exploit stored cross-site scripting (XSS) vulnerabilities. The plugin does not properly escape the name and description of JDK parameters when displaying them on views that show parameters. This allows an attacker to inject malicious scripts into the parameter name or description, which will be executed when the parameter is displayed on vulnerable pages. To exploit this vulnerability, the parameters must be listed on pages like 'Build With Parameters' and 'Parameters' that are not hardened against XSS attacks. Jenkins (core) has implemented measures to prevent exploitation of similar vulnerabilities on these pages since version 2.44 and LTS 2.32.2 as part of the SECURITY-353 / CVE-2017-2601 fix. Some plugins have also been updated to prevent exploitation by default.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

There is no specific workaround provided for this vulnerability. However, users can mitigate the risk by hardening the vulnerable pages, such as the 'Build With Parameters' and 'Parameters' pages, to prevent XSS attacks. This can be done by implementing input validation and output encoding to ensure that user-supplied data is properly sanitized and rendered safely.

Conclusion

The Jenkins JDK Parameter Plugin is vulnerable to a stored cross-site scripting (XSS) attack, which can be exploited by attackers with Item/Configure permission. To mitigate this vulnerability, it is crucial to upgrade to a non-affected version of the plugin and ensure that the Jenkins instance is running an updated version of Jenkins (core). Hardening the vulnerable pages against XSS attacks is also recommended. For further support on vulnerability remediation, you can contact DevNack.com.

See every vulnerability recorded for org.jenkins-ci.plugins:JDK_Parameter_Plugin →

Share this vulnerability

FAQ

This vulnerability allows an attacker with Item/Configure permission to execute arbitrary scripts in the context of the vulnerable page. This can lead to various malicious activities, such as stealing sensitive information, performing actions on behalf of the user, or defacing the Jenkins instance.

You can use the Vulert Playground (https://vulert.com/scanner) to check if your Jenkins instance is affected by this vulnerability. Vulert monitors and alerts in real-time for open-source vulnerabilities, using just the pom.xml file. It does not require access to the code or installation.

Upgrading to a non-affected version of the Jenkins JDK Parameter Plugin and Jenkins (core) is the recommended mitigation for this vulnerability. Additionally, hardening the vulnerable pages to prevent XSS attacks can further mitigate the risk.

There is no information available regarding exploitation of this specific vulnerability in the wild. However, since XSS vulnerabilities can be highly damaging, it is important to address this issue promptly to prevent potential attacks.

You can find more information about this vulnerability in the Jenkins Security Advisory (https://www.jenkins.io/security/advisory/2022-05-18/). It provides detailed information about the vulnerability, its impact, and recommended actions to mitigate the risk.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback