CloudBees Security Advisory 2021-05-11

This advisory announces vulnerabilities in Jenkins, CloudBees Jenkins Distribution, CloudBees Jenkins Platform and CloudBees CI

Reflected XSS vulnerability in Credentials Plugin 

SECURITY-2349 / CVE-2021-21648

Credentials Plugin 2.3.18 and earlier does not escape user-controlled information on a view it provides.

This results in a reflected cross-site scripting (XSS) vulnerability.

Credentials Plugin 2.3.19 restricts the user-controlled information it provides to a safe subset.

If you are unable to immediately update to a fixed version, we recommend the use of the CloudBees Request Filter Plugin to prohibit access to URLs that can trigger this vulnerability. Please refer to the Knowledge Base article How to block access to URLs vulnerable to SECURITY-2349/CVE-2021-21648.

Stored XSS vulnerability in Dashboard View Plugin 

SECURITY-2233 / CVE-2021-21649

Dashboard View Plugin 2.15 and earlier does not escape URLs referenced in Image Dashboard Portlets.

This results in a stored cross-site scripting (XSS) vulnerability exploitable by attackers with View/Configure permission.

Dashboard View Plugin 2.16 does not render unsafe URLs.

As part of this fix, the property for image URLs was changed from url to imageUrl. Existing Configuration as Code configurations are still supported, but exports will emit the new property.

Missing permission checks in S3 publisher Plugin allow obtaining metadata about artifacts 

SECURITY-2200 / CVE-2021-21650

S3 publisher Plugin 0.11.6 and earlier does not perform Run/Artifacts permission checks in various HTTP endpoints and API models.

This allows attackers with Item/Read permission to obtain information about artifacts uploaded to S3, if the optional Run/Artifacts permission is enabled.

S3 publisher Plugin 0.11.7 requires Run/Artifacts permission to obtain information about artifacts if this permission is enabled.

Missing permission check in S3 publisher Plugin 

SECURITY-2201 / CVE-2021-21651

S3 publisher Plugin 0.11.6 and earlier does not perform a permission check in an HTTP endpoint.

This allows attackers with Overall/Read permission to obtain the list of configured profiles.

S3 publisher Plugin 0.11.7 performs permission checks when providing a list of configured profiles.

CSRF vulnerability in Xray - Test Management for Jira Plugin allows capturing credentials 

SECURITY-2251 (1) / CVE-2021-21652

Xray - Test Management for Jira Plugin 2.4.0 and earlier does not require POST requests for a connection test method, resulting in a cross-site request forgery (CSRF) vulnerability.

This vulnerability allows attackers to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.

Xray - Test Management for Jira Plugin 2.4.1 requires POST requests for the affected connection test method.

Missing permission check in Xray - Test Management for Jira Plugin allows enumerating credentials IDs 

SECURITY-2251 (2) / CVE-2021-21653

Xray - Test Management for Jira Plugin 2.4.0 and earlier does not perform a permission check in an HTTP endpoint.

This allows attackers with Overall/Read permission to enumerate credentials IDs of credentials stored in Jenkins. Those can be used as part of an attack to capture the credentials using another vulnerability.

An enumeration of credentials IDs in Xray - Test Management for Jira Plugin 2.4.1 requires the appropriate permissions.

CSRF vulnerability and missing permission checks in P4 Plugin 

SECURITY-2327 / CVE-2021-21654 (permission check), CVE-2021-21655 (CSRF)

P4 Plugin 1.11.4 and earlier does not perform permission checks in multiple HTTP endpoints implementing connection tests.

This allows attackers with Overall/Read permission to connect to an attacker-specified Perforce server using attacker-specified username and password.

Additionally, these HTTP endpoints do not require POST requests, resulting in a cross-site request forgery (CSRF) vulnerability.

P4 Plugin 1.11.5 requires POST requests and Overall/Administer for the affected HTTP endpoints.

XXE vulnerability in Xcode integration Plugin 

SECURITY-2335 / CVE-2021-21656

Xcode integration Plugin 2.0.14 and earlier does not configure its XML parser to prevent XML external entity (XXE) attacks.

This allows attackers able to control the input files for the Xcode build step to have Jenkins parse a crafted Xcode Workspace File that uses external entities for extraction of secrets from the Jenkins controller or server-side request forgery.

Xcode integration Plugin 2.0.15 disables external entity resolution for its XML parser.

Severity

Fix

  • CloudBees Traditional Platforms should be upgraded to version 2.277.4.3

  • CloudBees Cloud Platforms should be upgraded to version 2.277.4.3

  • CloudBees Jenkins Enterprise should be upgraded the Managed Masters and Operations Center to version 2.277.4.3

  • CloudBees Jenkins Platform (rolling train, CJP Operations Center and CJP Client Master (2.x.y.z) should be upgraded to version 2.277.4.3

  • CloudBees Jenkins Platform (fixed train, CJP Operations Center and CJP Client Master (2.249.x.0.z) should be upgraded to version 2.249.31.0.4

  • CloudBees Jenkins Distribution should be upgraded to version 2.277.4.3