containerd can be coerced into leaking credentials during image pull
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- High
- Impact type
- Information disclosure
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Partial Red Hat: 1 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-522.
Summary
In containerd (an industry-standard container runtime) before version 1.2.14 there is a credential leaking vulnerability. If a container image manifest in the OCI Image format or Docker Image V2 Schema 2 format includes a URL for the location of a specific image layer (otherwise known as a “foreign layer”), the default containerd resolver will follow that URL to attempt to download it. In v1.2.x but not 1.3.0 or later, the default containerd resolver will provide its authentication credentials if the server where the URL is located presents an HTTP 401 status code along with registry-specific HTTP headers. If an attacker publishes a public image with a manifest that directs one of the layers to be fetched from a web server they control and they trick a user or system into pulling the image, they can obtain the credentials used for pulling that image. In some cases, this may be the user's username and password for the registry. In other cases, this may be the credentials attached to the cloud virtual instance which can grant access to other cloud resources in the account. The default containerd resolver is used by the cri-containerd plugin (which can be used by Kubernetes), the ctr development tool, and other client programs that have explicitly linked against it. This vulnerability has been fixed in containerd 1.2.14. containerd 1.3 and later are not affected. If you are using containerd 1.3 or later, you are not affected. If you are using cri-containerd in the 1.2 series or prior, you should ensure you only pull images from trusted sources. Other container runtimes built on top of containerd but not using the default resolver (such as Docker) are not affected.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| backstage | containerd | before 1.2.14 | 1.2.14 | Patch available | CNA |
| — | github.com/containerd/containerd (Go) | before 1.2.14 | 1.2.14 | Patch available | GHSA-742w-89gc-8m9c |
- containerd Vendorbackstage Affected before 1.2.14 Fixed in 1.2.14 Patch available CNA
- github.com/containerd/containerd (Go) Vendor— Affected before 1.2.14 Fixed in 1.2.14 Patch available GHSA-742w-89gc-8m9c
CPE configurations NVD · 13
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:linuxfoundation:containerd:*:*:*:*:*:*:*:* | 1.2.0 to before 1.2.14 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:-:*:*:*:*:*:* | 1.3.0 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:beta0:*:*:*:*:*:* | 1.3.0 beta0 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:beta1:*:*:*:*:*:* | 1.3.0 beta1 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:beta2:*:*:*:*:*:* | 1.3.0 beta2 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc0:*:*:*:*:*:* | 1.3.0 rc0 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc1:*:*:*:*:*:* | 1.3.0 rc1 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc2:*:*:*:*:*:* | 1.3.0 rc2 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc3:*:*:*:*:*:* | 1.3.0 rc3 | Vulnerable | backstage |
| cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:* | 16.04 | Vulnerable | Canonical |
- cpe:2.3:a:linuxfoundation:containerd:*:*:*:*:*:*:*:* Versions 1.2.0 to before 1.2.14 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:-:*:*:*:*:*:* Versions 1.3.0 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:beta0:*:*:*:*:*:* Versions 1.3.0 beta0 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:beta1:*:*:*:*:*:* Versions 1.3.0 beta1 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:beta2:*:*:*:*:*:* Versions 1.3.0 beta2 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc0:*:*:*:*:*:* Versions 1.3.0 rc0 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc1:*:*:*:*:*:* Versions 1.3.0 rc1 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc2:*:*:*:*:*:* Versions 1.3.0 rc2 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:containerd:1.3.0:rc3:*:*:*:*:*:* Versions 1.3.0 rc3 Vulnerable ·backstage
- cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:* Versions 16.04 Vulnerable ·Canonical
Remediation
- Fix · CNA containerd (containerd) Fixed in 1.2.14
- Fix · GHSA-742w-89gc-8m9c github.com/containerd/containerd (Go) Fixed in 1.2.14 Advisory →
Red Hat 1 advisory
- RHSA-2020:5634 Released 2021-02-24 · Red Hat rating ModerateOpenShift Container Platform 4.7.0 packages security update
- Red Hat OpenShift Container Platform 4.7 cri-o-1.20.0-0.rhaos4.7.git8921e00.el7.51, cri-o-1.20.0-0.rhaos4.7.git8921e00.el8.51, cri-tools-1.18.0-3.el7 +9
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat OpenShift Container Platform 4 | Affected | No fix planned: Will not fix |
| Red Hat OpenShift Container Platform 4.7 | Fixed | RHSA-2020:5634 |
Not affected: 7 products
- OpenShift Service Mesh 1
- Red Hat 3scale API Management Platform 2
- Red Hat Advanced Cluster Management for Kubernetes 2
- Red Hat OpenShift Container Platform 3.11
- Red Hat OpenShift Container Platform 4
- Red Hat OpenShift Container Platform 4.7
- Red Hat OpenShift Virtualization 2
Timeline
- 2026-10-02 Threatist record created from CVE-2020-15157
- 2026-10-03 Alias added: GHSA-742w-89gc-8m9c
References
Advisory 6
More backstage Containerd vulnerabilities
- TI-2021-19622 Improper Preservation of Permissions in containerd CVSS 3.1CRITICAL 9.1
- TI-2023-10635 containerd supplementary groups are not set up properly CVSS 3.1HIGH 7.8
- TI-2022-07700 Insecure handling of image volumes in containerd CRI plugin CVSS 3.1HIGH 7.5
- TI-2026-38567 Improper input validation in backstage containerd CVSS 4.0CRITICAL 9.4
- TI-2026-38569 containerd CRI checkpoint restore CDI annotation smuggling CVSS 4.0HIGH 8.4
- TI-2025-29820 Containerd vulnerable to host filesystem access during image unpack CVSS 4.0HIGH 7.6
Sources
- CVE-2020-15157 · CVE Program
- CVE-2020-15157 · NVD
- FIRST EPSS
- GHSA-742w-89gc-8m9c · GitHub Advisory Database · CC BY 4.0
- CVE-2020-15157 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences