Bug 2176447 (CVE-2023-26054)

Summary: CVE-2023-26054 buildkit: Data disclosure in provenance attestation describing a build
Product: [Other] Security Response Reporter: Pedro Sampaio <psampaio>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: bdettelb, dfreiber, dsimansk, jburrell, jwendell, lball, matzew, ovanders, rcernich, rhuss, rogbas, skontopo, twalsh, vkumar
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: buildkit 0.11.4 Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in the moby buildkit. When a build is performed under specific conditions where credentials were passed to BuildKit, it may be visible to everyone with access to provenance attestation.
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-06-13 23:23:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2176448, 2177587    
Bug Blocks: 2176454    

Description Pedro Sampaio 2023-03-08 12:33:50 UTC
BuildKit is a toolkit for converting source code to build artifacts in an efficient, expressive and repeatable manner. In affected versions when the user sends a build request that contains a Git URL that contains credentials and the build creates a provenance attestation describing that build, these credentials could be visible from the provenance attestation. Git URL can be passed in two ways: 1) Invoking build directly from a URL with credentials. 2) If the client sends additional version control system (VCS) info hint parameters on builds from a local source. Usually, that would mean reading the origin URL from `.git/config` file. When a build is performed under specific conditions where credentials were passed to BuildKit they may be visible to everyone who has access to provenance attestation. Provenance attestations and VCS info hints were added in version v0.11.0. Previous versions are not vulnerable. In v0.10, when building directly from Git URL, the same URL could be visible in `BuildInfo` structure that is a predecessor of Provenance attestations. Previous versions are not vulnerable. This bug has been fixed in v0.11.4. Users are advised to upgrade. Users unable to upgrade may disable VCS info hints by setting `BUILDX_GIT_INFO=0`. `buildctl` does not set VCS hints based on `.git` directory, and values would need to be passed manually with `--opt`.

References:

https://github.com/moby/buildkit/commit/75123c696506bdbca1ed69906479e200f1b62604
https://github.com/moby/buildkit/security/advisories/GHSA-gc89-7gcr-jxqc

Comment 1 Pedro Sampaio 2023-03-08 12:34:06 UTC
Created moby-engine tracking bugs for this issue:

Affects: fedora-all [bug 2176448]

Comment 2 Avinash Hanwate 2023-03-13 03:57:27 UTC
Created golang-github-moby-buildkit tracking bugs for this issue:

Affects: fedora-all [bug 2177587]

Comment 6 errata-xmlrpc 2023-06-13 13:10:27 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Container Platform 4.13

Via RHSA-2023:3537 https://access.redhat.com/errata/RHSA-2023:3537

Comment 7 Product Security DevOps Team 2023-06-13 23:23:36 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2023-26054

Comment 8 errata-xmlrpc 2023-10-19 22:23:30 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Service Mesh 2.4 for RHEL 8

Via RHSA-2023:5952 https://access.redhat.com/errata/RHSA-2023:5952