Grok fue sorprendido subiendo todo tu código fuente

BBetter Stack
컴퓨터/소프트웨어경제 뉴스AI/미래기술

스크립트

00:00:00Grok ha subido todo mi directorio de usuario a los servidores de xAI, contiene mis llaves SSH, mi contraseña,
00:00:05la base de datos del gestor, mis documentos, fotos, videos, todo. La CLI de codificación de Grok subió
00:00:10todo tu repositorio y tu historial de Git, incluyendo archivos que se le indicó no abrir y secretos eliminados del
00:00:16historial. Este es un error grave y masivo por parte del equipo de Grok, así que analicemos
00:00:20qué sucedió, cómo puedes verificar si tu código fue subido y qué ha hecho xAI para solucionar esto.
00:00:29Primero me enteré de esto por un tweet que decía a la gente que ejecutara este comando grep para leer
00:00:33los registros de Grok diciendo que estarás molesto; muestra una foto del registro donde se ve que pone en cola un repositorio
00:00:38para subirlo a los servidores de Grok. Este tweet tiene cientos de respuestas y citas de personas que ejecutaron este comando
00:00:42y obtuvieron un resultado similar, e incluso un usuario que ejecutó Grok en su directorio raíz reportó que
00:00:47subió todo. Investigaciones posteriores muestran que incluye un recolector de código en segundo plano similar a un malware.
00:00:52Así que veamos qué estaba haciendo realmente, y este es un reporte de un investigador llamado cereblab,
00:00:56quien usó mitmproxy para inspeccionar el tráfico que la CLI de Grok enviaba y recibía, y abrieron Grok en
00:01:02un repositorio y el único mensaje que le enviaron fue: “Responde bien, no abras ningún archivo”. Resulta,
00:01:07sin embargo, que esa instrucción no importa, ya que Grok subió todo el repositorio de todos modos. Hubo una
00:01:12solicitud POST que se envió conteniendo el paquete completo del repositorio, y este paquete tenía todo el historial de Git
00:01:16e incluso variables de entorno. Esto es lo que me parece tan grave de todo esto. Sí, todos sabemos que cuando
00:01:21usamos un modelo remoto, nuestro código será enviado a sus servidores, pero normalmente existe la suposición
00:01:26de que solo se les envía el código que realmente necesitan leer, no toda la base de código,
00:01:30incluso cuando no es relevante para el mensaje. Incluso mostraron que esto funcionaba cuando un repositorio tenía 12 gigabytes;
00:01:35seguía subiendo todo. Al probar esto en otras herramientas como Claude Code, Cursor y Gemini, se
00:01:40muestra que solo envían el archivo que leen. Este es un problema único de la CLI de Grok. Incluso descubrieron
00:01:45que si desactivabas la configuración “ayudar a mejorar este modelo”, igual lo haría, y recuperando la del usuario,
00:01:51había en realidad una bandera llamada trace_upload_enable, que siempre estaba establecida en “true”. Ahora, todos
00:01:55estos tweets y esta publicación comenzaron a hacerse virales, ¿así que cómo respondió xAI? Bueno, primero hicieron un poco de
00:02:01corrección silenciosa. Si intentabas esto de nuevo un día después de que la publicación se hiciera viral, la configuración mostraba que
00:02:05ese indicador de carga de rastreo estaba ahora desactivado y de hecho apareció uno nuevo llamado desactivar carga de base de código
00:02:10que estaba establecida en “true”, aparentemente para la cuenta de todos. Así que realmente habían implementado un interruptor de apagado
00:02:14del lado del servidor para la subida de código. Poco después, también respondieron públicamente en Twitter diciendo: “Nos importa
00:02:19profundamente tu privacidad y respetamos la elección del cliente. Para los equipos que utilizan retención de datos cero, no se conserva ningún rastro ni
00:02:24datos de código. Todo uso de Grok con API key también respeta la retención de datos cero. Si la retención de
00:02:30datos cero está desactivada, el comando /privacy está disponible en la CLI para desactivar la retención de datos,
00:02:36lo cual también elimina los datos sincronizados previamente. Ejecuta el comando /privacy para ver o cambiar tu
00:02:40configuración en cualquier momento”. Elon también tuiteó diciendo que, como medida de precaución, todos los datos de usuario que fueron
00:02:45subidos a xAI antes de ahora serán total y absolutamente eliminados. No quedará absolutamente nada,
00:02:51pero sí pidió en otro tweet que dejaras la configuración activada, ya que es realmente útil
00:02:55para depurar problemas si pueden retener una cierta cantidad de datos, lo cual puedo creer; si solo
00:03:00estuviéramos hablando de rastros, esa es una práctica bastante común, pero subir todo un repositorio a sus servidores,
00:03:05ninguna de estas respuestas parece abordar esa parte. Y la nueva actualización de la CLI de Grok simplemente añadió un comando de privacidad,
00:03:10pero vale la pena señalar que esta actualización no eliminó realmente el código que sube todo tu
00:03:14repositorio; puedes encontrarlo todavía en el binario. Así que parece que lo único que evita que esto se active
00:03:18de nuevo es esa bandera del lado del servidor que es controlada por xAI. Simplemente me parece que este código
00:03:23no debería estar ahí, ya que ninguna otra herramienta lo usa. Además, si echamos un vistazo a ese nuevo comando de privacidad,
00:03:28en realidad simplemente desactiva los rastreos y cambia el interruptor del servidor llamado exclusión de retención de datos de codificación
00:03:33y el mismo investigador analizó este comando y mostró que no hace nada localmente. Tus
00:03:38rastros de sesión todavía se publican a xAI en su totalidad, ya sea que esté activado o desactivado, y la única diferencia está en
00:03:43cómo responde el servidor: si está desactivado, responderá con un 200, lo que significa que se ha almacenado,
00:03:48y si el modo de privacidad está activado, simplemente devuelve un 204 para decir “no content” y que los datos han sido descartados.
00:03:53Así que en realidad es solo un interruptor de retención del lado del servidor y no lo bloquea desde el lado del cliente, por lo que
00:03:58todavía estás transmitiendo todo; solo tienes que confiar en que los servidores de xAI realmente van a
00:04:02descartarlo en lugar de almacenarlo. Incluso si confiara en xAI, es aún peor porque ese comando de privacidad
00:04:07es en realidad un interruptor de retención por sesión, por lo que es posible que tengas que activarlo en cada sesión para mantener
00:04:12tus datos seguros. Esto me parece increíblemente retrógrado, pero aquí es donde estamos ahora. Si has usado
00:04:17la CLI de Grok en el pasado y quieres ver qué pudo haberse filtrado desde tu máquina, puedes revisar tus
00:04:21registros. Este comando grep te muestra exactamente qué sesiones activaron las subidas. Si te tomas la seguridad
00:04:26en serio, probablemente querrás rotar todas esas claves si muestra que algo
00:04:30de esta información fue enviado, a menos que confíes plenamente en que xAI ha eliminado todo esto. Finalmente, si quieres
00:04:35mantener algo de privacidad mientras usas la CLI de Grok, aunque probablemente no lo recomendaría,
00:04:40hay un artículo muy bueno aquí sobre cómo puedes proteger la CLI de Grok y te muestra dónde
00:04:44configurar cosas como “disable_codebase_upload” en tu configuración, lo cual debería detener por completo esa tubería de subida. Así que,
00:04:49esa es la historia. Por alguna razón, Grok estaba subiendo todo tu repositorio incluso cuando no lo necesitaba, y aparentemente
00:04:53han eliminado todos esos datos ahora y han dado marcha atrás con la función. Pero quiero saber, ¿tú
00:04:58confías en ellos y usarías la CLI de Grok de ahora en adelante, ahora que sabes esto? Hazmelo saber en los
00:05:02comentarios de abajo. Espera, suscríbete y, como siempre, nos vemos en la próxima.

핵심 요약

La herramienta CLI de Grok transmitía repositorios completos de código y credenciales sensibles a los servidores de xAI sin consentimiento, dependiendo exclusivamente de un interruptor del lado del servidor para descartar los datos.

하이라이트

  • La CLI de codificación de Grok cargaba automáticamente directorios completos, incluyendo llaves SSH, contraseñas, historial de Git y archivos excluidos, hacia los servidores de xAI.

  • El análisis mediante mitmproxy reveló solicitudes POST que enviaban el paquete completo de repositorios de hasta 12 gigabytes, independientemente de las instrucciones del usuario.

  • La bandera interna trace_upload_enable estaba establecida en “true” por defecto, invalidando la configuración del usuario para no mejorar el modelo.

  • xAI implementó un interruptor de apagado en el lado del servidor y añadió un comando /privacy, aunque el binario local sigue conteniendo el código de carga.

  • El comando /privacy no bloquea la transmisión de datos desde el cliente, sino que simplemente solicita al servidor que los descarte tras recibir la sesión completa.

  • El uso del comando grep en los registros locales permite a los usuarios verificar si sus sesiones previas activaron subidas de datos no autorizadas.

타임라인

Exposición del problema de privacidad

  • La herramienta CLI de Grok subía directorios locales completos a los servidores de xAI.
  • Los datos filtrados incluían llaves SSH, contraseñas, documentos personales y todo el historial de Git.

La CLI de codificación de Grok ejecutaba una recolección masiva de archivos, ignorando instrucciones específicas de no abrir ciertos archivos. Usuarios confirmaron la carga de datos sensibles tras ejecutar comandos de inspección en sus registros locales.

Análisis técnico del comportamiento de la CLI

  • El análisis mediante mitmproxy confirmó el envío de todo el repositorio mediante solicitudes POST.
  • La bandera trace_upload_enable estaba configurada permanentemente como “true” en el cliente.
  • A diferencia de herramientas como Claude Code o Cursor, Grok transmitía datos innecesarios para la tarea de codificación.

La investigación técnica demostró que la instrucción explícita de “no abrir archivos” era ignorada. Incluso repositorios de hasta 12 GB eran enviados en su totalidad a los servidores de xAI, contraviniendo las expectativas normales de procesamiento de código remoto.

Respuesta y remediación de xAI

  • xAI implementó un interruptor de apagado remoto y una nueva configuración para desactivar la carga.
  • El comando /privacy funciona como un filtro de retención del lado del servidor en lugar de un bloqueo local.
  • xAI prometió la eliminación total de los datos cargados anteriormente por precaución.

Tras la viralización del problema, xAI introdujo cambios silenciosos y luego respuestas públicas. Sin embargo, el análisis técnico reveló que el comando de privacidad no detiene la transmisión local, sino que simplemente instruye al servidor para devolver un código de estado 204 y descartar la información recibida.

Pasos de seguridad para el usuario

  • Los usuarios deben verificar sus registros con grep para identificar sesiones afectadas.
  • Se recomienda la rotación de llaves SSH y secretos si hubo exposición.
  • La configuración disable_codebase_upload permite detener la carga desde el archivo de configuración local.

Para mitigar riesgos, es necesario revisar el historial de sesiones y considerar la rotación de credenciales. La configuración manual de banderas de desactivación en los archivos locales ofrece una capa de protección adicional frente al comportamiento predeterminado del binario.

커뮤니티 글

모든 글 보기