Se
ha informado de dos vulnerabilidades que posibilitan la ejecución de código
remoto y que afectan a todas las versiones de Git, tanto cliente como servidor,
anteriores a la 2.7.1. También se ven afectadas las versiones compatibles, como
GitHub, Bitbucket o Gitlab.
Git es un software de control de
versiones diseñado por Linus Torvalds, diseñado para la confiabilidad del
mantenimiento de versiones de aplicaciones cuando estas tienen un gran número
de archivos de código fuente. En la actualidad proyectos de relevancia usan Git
para el mantenimiento de sus versiones, como el grupo de programación del
núcleo Linux.
El primer problema, con CVE-2016-2315, podría permitir a un usuario remoto
autenticado enviar un repositorio específicamente manipulado para provocar un
desbordamiento de búfer y ejecutar código arbitrario en los sistemas afectados.
De forma similar, y relacionado con el anterior, un desbordamiento de entero (con
CVE-2016-2324) por el que un usuario autenticado que envíe
o clone un repositorio específicamente manipulado podría ejecutar código
arbitrario en los sistemas afectados.
Para hacer un push a un
repositorio Git remoto es necesario tener permiso de escritura, para lo que en
general se requiere de algún tipo de autenticación o autorización. Sin embargo,
en servicios tipo Bitbucket o Github en los que se puede crear o clonar un repositorio
sin la aprobación del administrador, estos problemas pueden ser mayores ya que
cualquiera podría intentar explotar la vulnerabilidad. Hay que señalar que en dichos
servicios el problema ya está corregido, pero en otros de similares
características (especialmente los auto-hospedados) podrían ser vulnerables.
Estos problemas fueron corregidos
en la versión 2.7.1 de Git, publicada en febrero, si bien no se han conocido
hasta ahora (ni los desarrolladores de Git informaron de ello en su momento).
Más información:
Remote Code
Execution in all git versions (client + server) < 2.7.1: CVE-2016-2324,
CVE-2016‑2315
server and
client side remote code execution through a buffer overflow in all git versions
before 2.7.1 (unpublished ᴄᴠᴇ-2016-2324 and ᴄᴠᴇ‑2016‑2315)
Git v2.7.1
Release Notes
Git
Antonio Ropero
Twitter: @aropero
No hay comentarios:
Publicar un comentario