Se ha hecho público un fallo en el
sistema de versiones Git que podría permitir la ejecución de código arbitrario
en la máquina de la víctima y al cual se le ha asignado el identificador
CVE-2017-1000117.
Los sistemas de control de versiones
son herramientas desarrolladas para el seguimiento de un proyecto o aplicación.
Herramientas sumamente importantes y utilizadas en cualquier desarrollo.
Detalle
e impacto de la vulnerabilidad
• La vulnerabilidad no
solo afecta al control de versiones Git, sino también están afectados los
sistemas de control de versiones Mercurial y Subversion. Aunque el error es
similar, los identificadores de la vulnerabilidades son distintos, siendo
CVE-2017-9800 para Subversion y CVE-2017-1000116 para Mercurial.
• El fallo es provocado
por un error en el procesado de los comandos “ssh://“, el cual puede ser
explotado si un repositorio remoto envía una URL especialmente manipulada a la
víctima cuando esta ejecuta un comando “clone“, permitiendo la ejecución de
cualquier programa existente en la máquina de la víctima.
• Pero esto no acaba
aquí: esta URL podría ser colocada en el fichero “.gitmodules“ del proyecto
clonado para así conseguir tener la máquina infectada y que esta vulnerabilidad
se ejecute de nuevo al invocar un comando “git clone --recurse-submodules“
Recomendación
• La vulnerabilidad en
Git ha sido corregidas en las últimas versiones publicadas.
Más
información:
• The Recurity Lablog http://blog.recurity-labs.com/2017-08-10/scm-vulns
• The Mail Archive https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1466490.html
Fuente:
Hispasec