Se ha emitido una alerta de máxima prioridad tras la revelación por parte de investigadores de seguridad de una vulnerabilidad crítica de Ejecución Remota de Código (RCE), identificada como CVE-2026-3854. Esta falla estructural en la infraestructura interna de Git de GitHub permite a cualquier usuario autenticado (incluso con privilegios mínimos) comprometer los servidores backend, acceder a millones de repositorios y lograr el control total de las instancias de GitHub Enterprise Server (GHES).
Anatomía del Ataque
La vulnerabilidad, descubierta mediante ingeniería inversa de binarios de código cerrado, se origina por una neutralización incorrecta de elementos especiales (CWE-77). El ataque es alarmantemente accesible, ya que no requiere dependencias de zero-day ni herramientas especiales; solo un cliente git estándar.
- Vector de Inyección (El Comando Push): El atacante inicia el ataque ejecutando un comando legítimo: git push -o. Este comando permite pasar cadenas de opciones arbitrarias al servidor.
- Falla en el Proxy (babeld): El proxy interno de Git, llamado babeld, toma los valores de estas opciones y los formatea en un encabezado interno denominado X-Stat. La vulnerabilidad radica en que babeld no sanitiza el carácter de punto y coma (;), el cual es utilizado por el sistema como delimitador de campo.
- Inyección de Campos (Semántica de “Última Escritura Gana”): Al inyectar un punto y coma seguido de un nombre de campo y un valor, el atacante engaña al servicio descendente (gitrpcd) para inyectar nuevos campos clave-valor, anulando variables críticas de seguridad.
- Cadena de Escalada a RCE: Para lograr la ejecución remota de código, el atacante encadena la inyección de tres campos específicos:
- rails_env: Se inyecta un valor que no es de producción para evitar el entorno aislado (sandbox), forzando al binario del hook de pre-recepción a ejecutarse en una ruta directa no aislada.
- custom_hooks_dir: Se anula para redirigir el directorio del hook, controlando dónde el binario buscará los scripts.
- repo_pre_receive_hooks: Se inyecta una carga útil de recorrido de ruta (path traversal) para forzar la ejecución arbitraria de un binario del sistema de archivos, operando bajo los privilegios del usuario de servicio git.
Impacto
- Compromiso de la Cadena de Suministro: Un RCE exitoso permite al atacante obtener permisos arbitrarios de lectura y escritura sobre los repositorios alojados, facilitando la inyección silenciosa de código malicioso en proyectos de la organización.
- Control del Servidor (GHES): En implementaciones autoalojadas, el atacante escapa de las restricciones de la aplicación y toma el control del nodo de almacenamiento subyacente.
Recomendaciones y Mitigación
- Actualización de GHES (Prioridad Cero): Los administradores de instancias de GitHub Enterprise Server deben aplicar los parches de seguridad de forma inmediata. Dada la facilidad de explotación (solo requiere un comando git push), los servidores expuestos corren un riesgo inminente.
- Monitorización de Comandos Git: Los equipos del SOC deben auditar los registros de actividad en busca del uso inusual o anómalo de la bandera -o (opciones de push) en los clientes Git de la organización.
- Revisión de Integridad de Código: Considerar la revisión de commits y pushes recientes en repositorios críticos si la instancia estuvo expuesta a la vulnerabilidad durante un periodo prolongado, para descartar la inserción de backdoors.




