GHSA-xfj7-qf8w-2gcr

Suggest an improvement
Source
https://github.com/advisories/GHSA-xfj7-qf8w-2gcr
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/02/GHSA-xfj7-qf8w-2gcr/GHSA-xfj7-qf8w-2gcr.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-xfj7-qf8w-2gcr
Aliases
Published
2024-02-08T18:44:25Z
Modified
2024-07-08T20:18:01Z
Severity
  • 7.7 (High) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:H CVSS Calculator
  • 8.4 (High) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:P/VC:H/VI:N/VA:N/SC:H/SI:H/SA:H CVSS Calculator
Summary
Rancher 'Audit Log' leaks sensitive information
Details

Impact

A vulnerability has been identified which may lead to sensitive data being leaked into Rancher's audit logs. Rancher Audit Logging is an opt-in feature, only deployments that have it enabled and have AUDIT_LEVEL set to 1 or above are impacted by this issue.

The leaks might be caught in the audit logs upon these actions:

  • Creating cloud credentials or new authentication providers. It is crucial to note that all authentication providers (such as AzureAD) and cloud providers (such as Google) are impacted.
  • Downloading a kubeconfig file from a downstream or a local cluster.
  • Logging in/out from Rancher.

The affected data may include the following:

  • HTTP headers

Field | Location -- | -- X-Api-Auth-Header | Request header X-Api-Set-Cookie-Header | Response header X-Amz-Security-Token | Request header credentials | Request body applicationSecret | Request Body oauthCredential | Request Body serviceAccountCredential | Request Body spKey | Request Body spCert | Request body spCert | Response body certificate | Request body privateKey | Request body

  • API Server calls returning Secret objects (including sub-types, such as kubernetes.io/dockerconfigjson).
  • Raw command lines used by agents to connect to the Rancher server which expose sensitive information (e.g. register ... --token abc).
  • Kubeconfig contents when the 'Download KubeConfig' feature is used in the Rancher UI.

The patched versions will redact the sensitive data, replacing it with [redacted], making it safer for consumption. It is recommended that static secrets are rotated after the system is patched, to limit the potential impact of sensitive data being misused due to this vulnerability.

Note: 1. The severity of the vulnerability is intricately tied to the logging strategy employed. If logs are kept locally (default configuration), the impact is contained within the system, limiting the exposure. However, when logs are shipped to an external endpoint, the vulnerability's severity might increase, as resistance against leaks is contingent on the security measures implemented at the external log collector level. 2. The final impact severity for confidentiality, integrity and availability is dependent on the permissions that the leaked credentials have on their own services.

Patches

Patched versions include releases 2.6.14, 2.7.10 and 2.8.2.

Workarounds

If AUDIT_LEVEL 1 or above is required and you cannot update to a patched Rancher version, ensure that the log is handled appropriately and it is not shared with other users or shipped into a log ingestion solution without the appropriate RBAC enforcement. Otherwise, disabling the Audit feature or decreasing it to the audit level 0, mitigates the issue.

For more information

If you have any questions or comments about this advisory:

References

Affected packages

Go / github.com/rancher/rancher

Package

Name
github.com/rancher/rancher
View open source insights on deps.dev
Purl
pkg:golang/github.com/rancher/rancher

Affected ranges

Type
SEMVER
Events
Introduced
2.6.0
Fixed
2.6.14

Go / github.com/rancher/rancher

Package

Name
github.com/rancher/rancher
View open source insights on deps.dev
Purl
pkg:golang/github.com/rancher/rancher

Affected ranges

Type
SEMVER
Events
Introduced
2.7.0
Fixed
2.7.10

Go / github.com/rancher/rancher

Package

Name
github.com/rancher/rancher
View open source insights on deps.dev
Purl
pkg:golang/github.com/rancher/rancher

Affected ranges

Type
SEMVER
Events
Introduced
2.8.0
Fixed
2.8.2