containerd is an open source container runtime. A bug was found in containerd's CRI implementation where a user can exhaust memory on the host. In the CRI stream server, a goroutine is launched to handle terminal resize events if a TTY is requested. If the user's process fails to launch due to, for example, a faulty command, the goroutine will be stuck waiting to send without a receiver, resulting in a memory leak. Kubernetes and crictl can both be configured to use containerd's CRI implementation and the stream server is used for handling container IO. This bug has been fixed in containerd 1.6.12 and 1.5.16. Users should update to these versions to resolve the issue. Users unable to upgrade should ensure that only trusted images and commands are used and that only trusted users have permissions to execute commands in running containers.
:heavy_check_mark: This issue was automatically closed by Mend because the vulnerable library in the specific branch(es) was either marked as ignored or it is no longer part of the Mend inventory.
CVE-2022-23471 - Medium Severity Vulnerability
Vulnerable Library - github.com/containerd/Containerd-v1.5.7
An open and reliable container runtime
Library home page: https://proxy.golang.org/github.com/containerd/containerd/@v/v1.5.7.zip
Path to dependency file: /portainer-develop/portainer-develop/api/go.mod
Path to vulnerable library: /portainer-develop/portainer-develop/api/go.mod
Dependency Hierarchy: - github.com/Docker/Docker-v20.10.9+incompatible (Root Library) - :x: **github.com/containerd/Containerd-v1.5.7** (Vulnerable Library)
Found in HEAD commit: ec9d972edb7fb1ea028782bd0f770272d89e0c60
Found in base branch: main
Vulnerability Details
containerd is an open source container runtime. A bug was found in containerd's CRI implementation where a user can exhaust memory on the host. In the CRI stream server, a goroutine is launched to handle terminal resize events if a TTY is requested. If the user's process fails to launch due to, for example, a faulty command, the goroutine will be stuck waiting to send without a receiver, resulting in a memory leak. Kubernetes and crictl can both be configured to use containerd's CRI implementation and the stream server is used for handling container IO. This bug has been fixed in containerd 1.6.12 and 1.5.16. Users should update to these versions to resolve the issue. Users unable to upgrade should ensure that only trusted images and commands are used and that only trusted users have permissions to execute commands in running containers.
Publish Date: 2022-12-07
URL: CVE-2022-23471
CVSS 3 Score Details (5.7)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: Low - Privileges Required: Low - User Interaction: Required - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: None - Integrity Impact: None - Availability Impact: High
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://www.cve.org/CVERecord?id=CVE-2022-23471
Release Date: 2022-12-07
Fix Resolution: v1.6.12
Step up your Open Source Security Game with Mend here