// For flags

CVE-2022-23471

containerd CRI stream server: Host memory exhaustion through terminal resize goroutine leak

Severity Score

6.5
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

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.

Containerd es un runtime de contenedor de código abierto. Se encontró un error en la implementación CRI de Containerd donde un usuario puede agotar la memoria en el host. En el servidor de transmisión CRI, se lanza una rutina para manejar eventos de cambio de tamaño del terminal si se solicita un TTY. Si el proceso del usuario no se inicia debido, por ejemplo, a un comando defectuoso, la rutina se atascará esperando enviarse sin un receptor, lo que provocará una pérdida de memoria. Tanto Kubernetes como crictl se pueden configurar para usar la implementación CRI de Containerd y el servidor de transmisión se usa para manejar la E/S del contenedor. Este error se solucionó en Containerd 1.6.12 y 1.5.16. Los usuarios deben actualizar a estas versiones para resolver el problema. Los usuarios que no puedan actualizar deben asegurarse de que solo se utilicen imágenes y comandos confiables y que solo los usuarios confiables tengan permisos para ejecutar comandos en contenedores en ejecución.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2022-01-19 CVE Reserved
  • 2022-12-07 CVE Published
  • 2024-07-28 EPSS Updated
  • 2024-08-03 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-400: Uncontrolled Resource Consumption
  • CWE-401: Missing Release of Memory after Effective Lifetime
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Linuxfoundation
Search vendor "Linuxfoundation"
Containerd
Search vendor "Linuxfoundation" for product "Containerd"
< 1.5.16
Search vendor "Linuxfoundation" for product "Containerd" and version " < 1.5.16"
-
Affected
Linuxfoundation
Search vendor "Linuxfoundation"
Containerd
Search vendor "Linuxfoundation" for product "Containerd"
>= 1.6.0 < 1.6.12
Search vendor "Linuxfoundation" for product "Containerd" and version " >= 1.6.0 < 1.6.12"
-
Affected