Vulnerabilidad en Git que permite la ejecución de código al clonar desde un repositorio de Git malicioso

Se han publicado versiones correctivas del sistema de control de versiones distribuido Git 2.56.1, 2.55.1, 2.54.1, 2.53.1, 2.52.1, 2.51.3 y 2.50.2, que resuelven 6 vulnerabilidades. La vulnerabilidad más crítica (CVE-2026-111760) permite la ejecución de código mediante el uso del comando «git clone» en modo «—recurse-submodules» con repositorios controlados por el atacante.

El problema se debe a que la longitud del nombre del índice se calcula utilizando un tipo entero de 32 bits. Al pasar un nombre muy largo como «.git/....» se produce un desbordamiento entero y el atacante puede lograr que la longitud se calcule como 4 bytes. Como resultado, al verificar los valores se utilizan datos reales, mientras que al realizar la operación se utiliza la versión truncada «.git», lo que permite al atacante reemplazar el archivo «.git» en el submódulo por un enlace simbólico que apunta a un directorio con configuraciones y ganchos.

Otras vulnerabilidades:

  • CVE-2026-113408 — desbordamiento de directorio refs/ al pasar una referencia simbólica con el valor «refs/heads/../../../TARGET» como rama HEAD al clonar un repositorio vacío mediante el protocolo Git v2. Al completar el comando «git commit», se creará un archivo TARGET en la raíz del repositorio, que se puede usar para sobrescribir archivos en el repositorio y organizar la ejecución de código.
  • CVE-2026-114467 — desbordamiento de pila al eliminar firmas GPG, lo que podría llevar potencialmente a la ejecución de código arbitrario. El problema se origina porque la función remove_signature() almacena las posiciones de las firmas en un arreglo fijo, diseñado para un máximo de dos firmas. Al pasar una etiqueta con tres o más firmas, los datos se almacenan fuera del arreglo.
  • CVE-2026-114469 — al verificar las restricciones de tamaño en parches binarios, se consideraban datos antes de descomprimir los datos comprimidos, lo que llevaba a leer contenido fuera de los límites del búfer.
  • CVE-2026-105437 — corrupción de memoria al realizar grandes operaciones de fusión debido a la acumulación del tamaño del resultado en un campo de tipo int. En la configuración de GitLab, esta vulnerabilidad puede ser explotada para ejecutar código (el problema se ha bloqueado en GitLab 19.5.4).
  • CVE-2026-114466 — sobrescritura de archivos arbitrarios en el sistema de archivos mediante el comando «git fast-import» debido a la eliminación incompleta de la vulnerabilidad CVE-2019-1348.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster