Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en las URL en programas externos de "credential helper" en Git (CVE-2020-5260)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-522 Credenciales insuficientemente protegidas
Fecha de publicación:
14/04/2020
Última modificación:
07/11/2023

Descripción

Las versiones afectadas de Git presentan una vulnerabilidad por la cual Git puede ser engañado para enviar credenciales privadas a un host controlado por un atacante. Git usa programas externos de "credential helper" para almacenar y recuperar contraseñas u otras credenciales del almacenamiento seguro provistas por el sistema operativo. Las URL especialmente diseñadas que contienen una nueva línea codificada pueden inyectar valores no deseados en la secuencia del protocolo credential helper, causando que el asistente de credenciales recupere la contraseña de un servidor (por ejemplo, good.example.com) para una petición HTTP que se lleva a cabo en otro servidor ( por ejemplo, evil.example.com), resultando en que las credenciales para el primero se envíen al segundo. No existen restricciones en la relación entre los dos, lo que significa que un atacante puede crear una URL que presente credenciales almacenadas para cualquier host a un host de su elección. La vulnerabilidad puede ser activada alimentando una URL maliciosa a git clone. Sin embargo, las URL afectadas lucen bastante sospechosas; el vector probable sería por medio de sistemas que clonan automáticamente las URL no visibles para el usuario, como submódulos de Git o sistemas de paquetes creados alrededor de Git. El problema se ha corregido en las versiones publicadas el 14 de abril de 2020, que se remontan a las versiones v2.17.x. Cualquiera que desee respaldar el cambio aún más puede hacerlo aplicando el commit 9a6bbee (la versión completa incluye comprobaciones adicionales para git fsck, pero ese commit es suficiente para proteger a los clientes contra la vulnerabilidad). Las versiones parcheadas son: 2.17.4, 2.18.3, 2.19.4, 2.20.3, 2.21.2, 2.22.3, 2.23.2, 2.24.2, 2.25.3, 2.26.1.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:git:git:*:*:*:*:*:*:*:* 2.17.4 (excluyendo)
cpe:2.3:a:git:git:*:*:*:*:*:*:*:* 2.22.0 (incluyendo) 2.22.3 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.18.0 (incluyendo) 2.18.3 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.19.0 (incluyendo) 2.19.4 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.20.0 (incluyendo) 2.20.3 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.21.0 (incluyendo) 2.21.2 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.23.0 (incluyendo) 2.23.2 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.24.0 (incluyendo) 2.24.2 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.25.0 (incluyendo) 2.25.3 (excluyendo)
cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:* 2.26.0 (incluyendo) 2.26.1 (excluyendo)
cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:*
cpe:2.3:o:canonical:ubuntu_linux:18.04:*:*:*:lts:*:*:*
cpe:2.3:o:canonical:ubuntu_linux:19.10:*:*:*:*:*:*:*
cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*
cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*


Referencias a soluciones, herramientas e información