Vulnerabilidades en Git que conducen a la fuga y sobrescritura de datos

Se han publicado parches para Git 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7 y 2.30.8 para el sistema de control de versiones distribuido. Estos parches corrigen dos vulnerabilidades que afectan a las optimizaciones de clonación local y al comando "git apply". Puede consultar las actualizaciones de paquetes para estas distribuciones en las siguientes páginas: Debian, UbuntuRHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Si no es posible instalar la actualización, como solución alternativa, recomendamos evitar la operación "git clone" con la opción "--recurse-submodules" con repositorios no confiables y no usar los comandos "git apply" y "git am" con código no probado.

  • La vulnerabilidad CVE-2023-22490 permite que un atacante que controla el contenido de un repositorio clonado obtenga acceso a datos confidenciales en el sistema de un usuario. Dos defectos contribuyen a la aparición de la vulnerabilidad:

    La primera falla permite, cuando se trabaja con un repositorio especialmente diseñado, lograr el uso de optimizaciones de clonación local incluso cuando se usa un transporte que interactúa con sistemas externos.

    La segunda falla permite colocar un enlace simbólico en lugar del directorio $GIT_DIR/objects, similar a la vulnerabilidad CVE-2022-39253, en la corrección de la cual se bloqueó la colocación de enlaces simbólicos en el directorio $GIT_DIR/objects, pero el hecho que el directorio $GIT_DIR/objects en sí mismo no se verificó puede ser un enlace simbólico.

    En el modo de clonación local, git mueve $GIT_DIR/objects al directorio de destino eliminando las referencias de los enlaces simbólicos, lo que hace que los archivos a los que se hace referencia se copien directamente en el directorio de destino. Cambiar al uso de optimizaciones de clones locales para el transporte no local permite la explotación de vulnerabilidades cuando se trabaja con repositorios externos (por ejemplo, la inclusión recursiva de submódulos con el comando "git clone --recurse-submodules" puede conducir a la clonación de un repositorio malicioso empaquetado como un submódulo en otro repositorio).

  • La vulnerabilidad CVE-2023-23946 permite sobrescribir el contenido de los archivos fuera del directorio de trabajo al pasar una entrada con formato especial al comando "git apply". Por ejemplo, se puede realizar un ataque cuando los parches preparados por un atacante se procesan en "git apply". Para evitar que los parches creen archivos fuera de la copia de trabajo, "git apply" bloquea el procesamiento de parches que intentan escribir un archivo usando enlaces simbólicos. Pero esta protección resultó ser eludida al crear un enlace simbólico en primer lugar.

Fuente: opennet.ru

Compre alojamiento confiable para sitios con protección DDoS, servidores VPS VDS 🔥 Compra alojamiento web fiable con protección DDoS, servidores VPS VDS | ProHoster