---
id: CVE-2022-23471
aliases:
  - GHSA-2qjp-425j-52j9
  - GO-2022-1147
title: containerd CRI stream server vulnerable to host memory exhaustion via terminal
summary: containerd CRI stream server vulnerable to host memory exhaustion via terminal
severity: medium
cvss: 5.7
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H'
vendor: containerd
product: github.com/containerd/containerd
ecosystem: go
affected:
  - github.com/containerd/containerd < 1.5.16
  - 'github.com/containerd/containerd >= 1.6.0, < 1.6.12'
patched:
  - github.com/containerd/containerd 1.5.16
  - github.com/containerd/containerd 1.6.12
published: '2022-12-07'
updated: '2026-09-10'
sourceUpdated: '2026-09-10T03:49:50.177462450Z'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/GHSA-2qjp-425j-52j9'
references:
  - url: >-
      https://github.com/containerd/containerd/security/advisories/GHSA-2qjp-425j-52j9
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2022-23471'
  - url: >-
      https://github.com/containerd/containerd/commit/241563be06a3de8b6a849414c4e805b68d3bb295
  - url: >-
      https://github.com/containerd/containerd/commit/a05d175400b1145e5e6a735a6710579d181e7fb0
  - url: 'https://github.com/containerd/containerd'
  - url: 'https://github.com/containerd/containerd/releases/tag/v1.5.16'
  - url: 'https://github.com/containerd/containerd/releases/tag/v1.6.12'
  - url: 'https://security.gentoo.org/glsa/202401-31'
tags:
  - osv
  - go
epss: 0.01069
epssPercentile: 0.63368
ingestedAt: '2026-09-12T03:13:01.746Z'
---

## Overview

### Impact

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.

### Patches

This bug has been fixed in containerd 1.6.12 and 1.5.16.  Users should update to these versions to resolve the issue.

### Workarounds

Ensure that only trusted images and commands are used and that only trusted users have permissions to execute commands in running containers. 

### For more information

If you have any questions or comments about this advisory:

* Open an issue in [containerd](https://github.com/containerd/containerd/issues/new/choose)
* Email us at [security@containerd.io](mailto:security@containerd.io)

To report a security issue in containerd:
* [Report a new vulnerability](https://github.com/containerd/containerd/security/advisories/new)
* Email us at [security@containerd.io](mailto:security@containerd.io)

## Affected packages

- `github.com/containerd/containerd < 1.5.16`
- `github.com/containerd/containerd >= 1.6.0, < 1.6.12`

## Remediation

Upgrade to a patched release:

- `github.com/containerd/containerd 1.5.16`
- `github.com/containerd/containerd 1.6.12`
