CVE-2024-29902

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.
Configurations

No configuration.

History

21 Nov 2024, 09:08

Type Values Removed Values Added
References () https://github.com/google/go-containerregistry/blob/a0658aa1d0cc7a7f1bcc4a3af9155335b6943f40/pkg/v1/remote/layer.go#L36-L40 - () https://github.com/google/go-containerregistry/blob/a0658aa1d0cc7a7f1bcc4a3af9155335b6943f40/pkg/v1/remote/layer.go#L36-L40 -
References () https://github.com/sigstore/cosign/blob/9bc3ee309bf35d2f6e17f5d23f231a3d8bf580bc/pkg/oci/remote/remote.go#L228-L239 - () https://github.com/sigstore/cosign/blob/9bc3ee309bf35d2f6e17f5d23f231a3d8bf580bc/pkg/oci/remote/remote.go#L228-L239 -
References () https://github.com/sigstore/cosign/commit/629f5f8fa672973503edde75f84dcd984637629e - () https://github.com/sigstore/cosign/commit/629f5f8fa672973503edde75f84dcd984637629e -
References () https://github.com/sigstore/cosign/releases/tag/v2.2.4 - () https://github.com/sigstore/cosign/releases/tag/v2.2.4 -
References () https://github.com/sigstore/cosign/security/advisories/GHSA-88jx-383q-w4qc - () https://github.com/sigstore/cosign/security/advisories/GHSA-88jx-383q-w4qc -
Summary
  • (es) 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.

10 Apr 2024, 23:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-04-10 23:15

Updated : 2024-11-21 09:08


NVD link : CVE-2024-29902

Mitre link : CVE-2024-29902

CVE.ORG link : CVE-2024-29902


JSON object : View

Products Affected

No product.

CWE
CWE-770

Allocation of Resources Without Limits or Throttling