CloudBees Security Advisory 2024-06-26

This advisory announces vulnerabilities in CloudBees CI and Jenkins

Missing permission check in CloudBees High Availability (Active/Active) Plugin

BEE-50005
Severity (CVSS): Medium
Affected plugin: CloudBees High Availability (Active/Active) Plugin
Description:

CloudBees High Availability (Active/Active) Plugin 1681 and earlier does not perform a permission check when displaying pending jobs in the queue widget.

This allows unauthenticated attackers to obtains names of pendings jobs.

CloudBees High Availability (Active/Active) Plugin 1682 requires Overall/Read permission to display pending jobs in the queue widget. Additionally, CloudBees High Availability (Active/Active) Plugin 1677.1680 is a backport version that includes the fix.

Exposure of secrets through system log in Structs Plugin

SECURITY-3371 / CVE-2024-39458
Severity (CVSS): Low
Affected plugin: structs
Description:

Structs Plugin provides utility functionality used, e.g., in Pipeline to instantiate and configure build steps, typically before their execution.

When Structs Plugin 337.v1b_04ea_4df7c8 and earlier fails to configure a build step, it logs a warning message containing diagnostic information that may contain secrets passed as step parameters.

This can result in accidental exposure of secrets through the default system log.

Structs Plugin 338.v848422169819 inspects the types of actual parameters before logging these warning messages, and limits detailed diagnostic information to FINE level log messages if secrets are involved. These log messages are not displayed in the default Jenkins system log.

Secret file credentials stored unencrypted in rare cases by Plain Credentials Plugin

SECURITY-2495 / CVE-2024-39459
Severity (CVSS): Medium
Affected plugin: plain-credentials
Description:

When creating secret file credentials Plain Credentials Plugin 182.v468b_97b_9dcb_8 and earlier attempts to decrypt the content of the file to check if it constitutes a valid encrypted secret. In rare cases the file content matches the expected format of an encrypted secret, and the file content will be stored unencrypted (only Base64 encoded) on the Jenkins controller file system.

These credentials can be viewed by users with access to the Jenkins controller file system (global credentials) or with Item/Extended Read permission (folder-scoped credentials).

Secret file credentials stored unencrypted are unusable, as they would be decrypted during their use. Any successfully used secret file credentials are therefore unaffected.

Plain Credentials Plugin 183.va_de8f1dd5a_2b_ no longer attempts to decrypt the content of the file when creating secret file credentials.

Bitbucket OAuth access token exposed in the build log by Bitbucket Branch Source Plugin

SECURITY-3363 / CVE-2024-39460
Severity (CVSS): Medium
Affected plugin: cloudbees-bitbucket-branch-source
Description:

Bitbucket Branch Source Plugin 886.v44cf5e4ecec5 and earlier prints the Bitbucket OAuth access token as part of the Bitbucket URL in the build log in some cases.

Bitbucket Branch Source Plugin 887.va_d359b_3d2d8d does not include the Bitbucket OAuth access token as part of the Bitbucket URL in the build log.

Severity

Fix

  • CloudBees Traditional Platforms should be upgraded to 2.452.2.4

  • CloudBees Cloud Platforms should be upgraded to 2.452.2.4

  • CloudBees High Availability (Active/Active) Plugin should be upgraded to 1677.1680

  • Bitbucket Branch Source Plugin should be updated to version 887.va_d359b_3d2d8d

  • Plain Credentials Plugin should be updated to version 183.va_de8f1dd5a_2b_

  • Structs Plugin should be updated to version 338.v848422169819