CRM y Datos

Grok Build subió repositorios de Git completos a la nube de xAI, no solo los archivos que leyó

Fuente: The Hacker News (thehackernews.com)5 min de lectura
Logo de Grok de xAI sobre fondo oscuro, en referencia a la filtración de repositorios de código por la herramienta Grok Build
Imagen: The Hacker News

En 30 segundos

La herramienta de código Grok Build de xAI subía repositorios de Git completos, con todo su historial de commits, a un bucket de Google Cloud llamado grok-code-session-traces, no solo los archivos que la tarea necesitaba. Un investigador midió en un repositorio de 12 GB una diferencia de unas 27.800 veces entre lo que el modelo leyó y lo que salió de la máquina. Un archivo .env con secretos viajó sin redactar. Desactivar el toggle de entrenamiento no detenía la subida: regula el entrenamiento, no si tu código deja el equipo. El 13 de julio xAI apagó la subida.

La herramienta de línea de comandos de código Grok Build, de xAI, estaba subiendo repositorios de Git completos, con todo su historial de commits, a un bucket de Google Cloud Storage operado por xAI, y no solo los archivos que una tarea de código necesitaba. Lo demostró un investigador que publica como cereblab, probando la versión 0.2.93, tras interceptar una de esas subidas y reconstruir el paquete de git desde la petición capturada.

¿Qué encontró exactamente el investigador?

El desbalance de bytes es difícil de discutir. En un repositorio de 12 GB de archivos que el modelo nunca leyó, el tráfico del modelo hacia /v1/responses fue de unos 192 KB, mientras que el canal de almacenamiento hacia /v1/storage movió 5,10 GiB: una brecha de aproximadamente 27.800 veces entre lo que el modelo necesitaba y lo que salió de la máquina. La subida se hizo en 73 fragmentos de unos 75 MB, cada uno con respuesta HTTP 200, hacia un bucket llamado grok-code-session-traces. Un archivo señuelo que el agente tenía prohibido abrir se recuperó palabra por palabra desde el paquete capturado, junto con el historial completo de commits, y la prueba se replicó en un segundo repositorio no relacionado.

¿Por qué el toggle de privacidad no protegía tu código?

El control que la mayoría de los desarrolladores usaría no servía aquí. Con la opción "Improve the model" desactivada, Grok igual subía el repositorio, y la respuesta del servidor en /v1/settings seguía devolviendo trace_upload_enabled: true. Ese toggle gobierna si tus datos entrenan el modelo. No gobierna si tu código deja la máquina. Son dos controles distintos y solo uno estaba expuesto al usuario. El problema de los secretos es aparte: cuando Grok lee un archivo, su contenido entra al turno del modelo, y un .env con credenciales viajó sin redactar, además de quedar en un archivo de estado destinado al almacenamiento.

¿Cómo se compara Grok con Claude Code, Codex y Gemini?

Toda herramienta de código en la nube tiene que enviar algo de código fuente a un modelo remoto para funcionar, así que ese primer canal es esperable. Enviar el repositorio entero con su historial es una frontera mucho más amplia. En la comparación entre herramientas del propio investigador, Claude Code y Codex no enviaron ningún paquete de repositorio, y Gemini no envió nada en una prueba en reposo. Grok Build fue el caso atípico. Aun así, todas son herramientas en la nube que envían los archivos que abren, por lo que "solo local" es el modelo mental equivocado para cualquiera de ellas.

¿Cómo respondió xAI?

El 13 de julio, el mismo binario 0.2.93 dejó de hacer peticiones de almacenamiento tras un cambio del lado del servidor, no una actualización del cliente. El servidor pasó a devolver disable_codebase_upload: true. xAI abordó el tema en X, no mediante un aviso de seguridad. La cuenta @SpaceXAI dijo que los equipos enterprise con retención de datos cero (ZDR) nunca tuvieron código almacenado, que el uso por clave de API respeta ZDR, y que los usuarios que no lo activaron pueden ejecutar /privacy en la CLI para desactivar la retención y borrar lo ya sincronizado. Elon Musk fue más allá y dijo que todos los datos subidos antes serían "completa y absolutamente eliminados". El código de subida seguía presente en el binario 0.2.99, contenido solo por una bandera de servidor, así que xAI puede reactivarlo sin una actualización.

Análisis de Revenue Hub

Para un líder comercial, de operaciones o de tecnología en Chile y Latinoamérica, esta historia no es un problema de desarrolladores lejano: es una lección de gobernanza sobre cada herramienta de IA que tu equipo adopta para vender, dar servicio o construir. El patrón estructural es que la etiqueta de privacidad de un proveedor y lo que su software hace de verdad pueden ser dos cosas distintas. Un toggle que dice "no entrenes con mis datos" no es lo mismo que "mis datos no salen de mi equipo", y confundirlos puede exponer credenciales, datos de clientes y propiedad intelectual que creías controlada.

La decisión práctica no es prohibir la IA, sino tratar la gobernanza de datos como parte de la evaluación de cualquier proveedor, no como un anexo legal que nadie lee. Antes de habilitar un agente de código o de ventas sobre tu CRM, pregunta qué datos salen de la máquina, a dónde van, cuánto se retienen y qué control real tiene el usuario, con evidencia y no solo con una casilla de configuración. Para equipos que operan sobre datos sensibles conviene exigir retención cero contractual y rotar credenciales ante cualquier duda. Si te interesa cómo ordenar datos y controles para la era de los agentes, revisa nuestra cobertura en CRM y Datos y los análisis del blog de Revenue Hub.

Preguntas frecuentes

¿Qué hizo Grok Build de xAI con los repositorios de código?

La CLI de código Grok Build subía repositorios de Git completos, con todo su historial de commits, a un bucket de Google Cloud Storage de xAI llamado grok-code-session-traces, no solo los archivos que la tarea de código necesitaba.

¿Cuánta información de más salía de la máquina?

En un repositorio de 12 GB que el modelo nunca leyó, el investigador cereblab midió unos 192 KB de tráfico del modelo frente a 5,10 GiB en el canal de almacenamiento, una brecha de aproximadamente 27.800 veces entre lo que el modelo necesitaba y lo que se subió.

¿El toggle de privacidad de Grok detenía la subida?

No. Con la opción "Improve the model" desactivada, Grok seguía subiendo el repositorio y el servidor mantenía trace_upload_enabled en true. Ese toggle regula el consentimiento de entrenamiento, no si el código deja el equipo.

¿Se filtraron secretos como claves o contraseñas?

En la prueba, un archivo .env con credenciales que el agente leyó viajó sin redactar y quedó en un archivo de estado destinado al almacenamiento. Los secretos eran señuelos falsos, pero el comportamiento expone credenciales reales en un uso normal.

¿Claude Code, Codex y Gemini hacen lo mismo?

Según la comparación del investigador, Claude Code y Codex no enviaron ningún paquete de repositorio y Gemini no envió nada en una prueba en reposo. Grok Build fue el caso atípico, aunque todas envían los archivos que abren.

¿Qué hizo xAI para resolverlo?

El 13 de julio apagó la subida con un cambio del lado del servidor, no con una actualización del cliente. xAI lo comunicó en X. Elon Musk dijo que los datos previos serían eliminados por completo y ofreció el comando /privacy en la CLI para los usuarios sin retención cero.

¿Qué debo hacer si usé Grok Build?

No esperar a xAI: rota cualquier credencial que Grok haya podido enviar, incluyendo secretos en archivos rastreados y en el historial de commits, incluso los que borraste después. Un archivo que estuvo en .gitignore y nunca se hizo commit quedó fuera del paquete.

¿Por qué importa esto para una empresa B2B en Chile y Latinoamérica?

Porque muestra que la etiqueta de privacidad de un proveedor y lo que su software hace pueden diferir. Antes de habilitar agentes de IA sobre datos o CRM, conviene exigir claridad sobre qué datos salen de la máquina, a dónde van y qué control real tiene el usuario.

¿Te sirvió esta noticia? Compártela con tu equipo

Fuente original

Esta noticia se basa en la publicación de The Hacker News. Lee el artículo completo en su fuente:

https://thehackernews.com/2026/07/grok-build-uploads-entire-git.html