// For flags

CVE-2024-29902

Cosign vulnerable to system-wide denial of service via malicious attachments

Severity Score

4.2
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track*
*SSVC
Descriptions

Cosign provides code signing and transparency for containers and binaries. Prior to version 2.2.4, a remote image with a malicious attachment can cause denial of service of the host machine running Cosign. This can impact other services on the machine that rely on having memory available such as a Redis database which can result in data loss. It can also impact the availability of other services on the machine that will not be available for the duration of the machine denial. The root cause of this issue is that Cosign reads the attachment from a remote image entirely into memory without checking the size of the attachment first. As such, a large attachment can make Cosign read a large attachment into memory; If the attachments size is larger than the machine has memory available, the machine will be denied of service. The Go runtime will make a SigKill after a few seconds of system-wide denial. This issue can allow a supply-chain escalation from a compromised registry to the Cosign user: If an attacher has compromised a registry or the account of an image vendor, they can include a malicious attachment and hurt the image consumer. Version 2.2.4 contains a patch for the vulnerability.

Cosign proporciona firma de código y transparencia para contenedores y binarios. Antes de la versión 2.2.4, una imagen remota con un archivo adjunto malicioso podía provocar una denegación de servicio en la máquina host que ejecuta Cosign. Esto puede afectar a otros servicios de la máquina que dependen de la memoria disponible, como una base de datos de Redis, lo que puede provocar la pérdida de datos. También puede afectar la disponibilidad de otros servicios en la máquina que no estarán disponibles mientras dure la denegación de la máquina. La causa principal de este problema es que Cosign lee el archivo adjunto de una imagen remota completamente en la memoria sin verificar primero el tamaño del archivo adjunto. Como tal, un archivo adjunto grande puede hacer que Cosign lea un archivo adjunto grande en la memoria; Si el tamaño de los archivos adjuntos es mayor que la memoria disponible de la máquina, se le negará el servicio a la máquina. El tiempo de ejecución de Go realizará un SigKill después de unos segundos de denegación en todo el sistema. Este problema puede permitir una escalada de la cadena de suministro desde un registro comprometido hasta el usuario de Cosign: si un adjunto ha comprometido un registro o la cuenta de un proveedor de imágenes, puede incluir un archivo adjunto malicioso y dañar al consumidor de la imagen. La versión 2.2.4 contiene un parche para la vulnerabilidad.

A flaw was found in the Cosign package where a malicious attachment may trigger uncontrolled resource consumption by allocating too much memory. This flaw allows an attacker to craft a malicious attachment, resulting in a denial of service, possibly impacting other applications running on the same system.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
High
Privileges Required
High
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
* Common Vulnerability Scoring System
SSVC
  • Decision:Track*
Exploitation
Poc
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-03-21 CVE Reserved
  • 2024-04-10 CVE Published
  • 2024-04-11 EPSS Updated
  • 2024-08-02 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-770: Allocation of Resources Without Limits or Throttling
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Sigstore
Search vendor "Sigstore"
Cosign
Search vendor "Sigstore" for product "Cosign"
< 2.2.4
Search vendor "Sigstore" for product "Cosign" and version " < 2.2.4"
en
Affected