Vulnerabilidades en Git al clonar submódulos y usar el shell de git

Se han publicado versiones correctivas del sistema de control de código fuente distribuido Git 2.38.1, 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3 y 2.37.4, que solucionan dos vulnerabilidades, que aparecen cuando se usa el comando "git clone" en el modo "—recurse-submodules" con repositorios no verificados y cuando se usa el modo interactivo "git shell". Puede realizar un seguimiento del lanzamiento de actualizaciones de paquetes en distribuciones en las páginas de Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

  • CVE-2022-39253: la vulnerabilidad permite a un atacante que controla el contenido del repositorio clonado obtener acceso a datos confidenciales en el sistema del usuario colocando enlaces simbólicos a archivos de interés en el directorio $GIT_DIR/objects del repositorio clonado. El problema solo aparece cuando se clona localmente (en el modo "--local", usado cuando los datos de destino y de origen del clon están en la misma partición) o cuando se clona un repositorio malicioso empaquetado como un submódulo en otro repositorio (por ejemplo, al incluir submódulos de forma recursiva con el comando "git clone" --recurse-submodules").

    La vulnerabilidad es causada por el hecho de que en el modo de clonación “--local”, git transfiere el contenido de $GIT_DIR/objects al directorio de destino (creando enlaces duros o copias de archivos), realizando la desreferencia de enlaces simbólicos (es decir, como Como resultado, los enlaces no simbólicos se copian en el directorio de destino, sino directamente los archivos a los que apuntan los enlaces). Para bloquear la vulnerabilidad, las nuevas versiones de git prohíben la clonación de repositorios en modo “--local” que contienen enlaces simbólicos en el directorio $GIT_DIR/objects. Además, el valor predeterminado del parámetro protocol.file.allow se ha cambiado a "usuario", lo que hace que las operaciones de clonación utilizando el protocolo file:// no sean seguras.

  • CVE-2022-39260: Desbordamiento de enteros en la función split_cmdline() utilizada en el comando "git shell". El problema se puede utilizar para atacar a los usuarios que tienen "git shell" como su shell de inicio de sesión y tienen habilitado el modo interactivo (se ha creado un archivo $HOME/git-shell-commands). La explotación de la vulnerabilidad puede conducir a la ejecución de código arbitrario en el sistema al enviar un comando especialmente diseñado con un tamaño superior a 2 GB.

Fuente: opennet.ru

Añadir un comentario