noviembre 6, 2026

Tecnología Geek

Noticias diarias sobre tecnología, móviles, inteligencia artificial y gadgets en español. Reviews, lanzamientos y tendencias para Latinoamérica.

Ciberseguridad Industrial & Consumidor

Claude Code y User-Agent: tu correo viajó a otros sitios

Claude Code y el correo de la cuenta en el encabezado User-Agent
Foto: Tin Computer

Claude Code puso el correo de la cuenta en el User-Agent de peticiones web que el propio agente escribió: Claude Code y User-Agent quedaron unidos en comandos de red que salieron hacia sitios de terceros, con la dirección de inicio de sesión del usuario dentro del encabezado.

El reporte público está en el repositorio de Anthropic en GitHub, con el número 107757, abierto el 5 de noviembre. Un usuario de la versión 2.1.318 en macOS contó que el agente metió su dirección en el encabezado durante búsquedas web sin su permiso y que después recibió decenas de correos de estafa al día. Esa conexión es su testimonio, sin verificación externa. El mecanismo quedó documentado por varias vías.

User-Agent es la etiqueta con la que un programa se presenta ante un sitio. Una herramienta de línea de comandos puede escribir la etiqueta que quiera, y ahí está el hueco. Claude Code conoce el correo de la cuenta porque Anthropic lo coloca en el contexto del modelo en cada sesión, un dato pensado para firmar autorías y evitar nombres inventados en etiquetas de autor, tal como explicó Lydia Hallie, del equipo de Claude Code, en la discusión de Hacker News que cita Tin Computer.

Cuando el modelo redacta un comando con curl o un programa corto para pedir una página, a veces copia ese correo como dato de contacto. Wikipedia pide a los clientes automáticos una etiqueta descriptiva con una forma de contacto, y la política de Wikimedia acepta un correo, un sitio web o una página de usuario. La petición del sitio explica la elección del modelo. No la convierte en permiso para usar la dirección privada de inicio de sesión de otra persona.

El correo salió, y también el nombre del proyecto

Un comentario añadido al mismo reporte 107757 ensancha el problema. Su autor revisó sus registros y halló dos peticiones salientes: una llevaba un User-Agent con el nombre del proyecto y el correo de la cuenta, pegados a una consulta en una interfaz de geocodificación pública. La otra era un programa escrito por el modelo, con el correo en un encabezado mailto, contra una interfaz de búsqueda académica. Una sola petición entregó a un tercero tres datos juntos: proyecto, identidad y consulta.

Tin Computer, en su investigación publicada este 6 de noviembre, revisó los registros de Tin Analytics y halló cinco cadenas User-Agent distintas con un correo dentro, todas pidiendo el mismo artículo el 31 de octubre entre las 13:20 y las 15:46 UTC. Tin Computer aclara que esos registros prueban el patrón del lado que recibe, no que Claude Code enviara esas cinco peticiones concretas.

El mismo conteo separa lo que no pasó. Entre el 27 de octubre y el 5 de noviembre, Tin Analytics contó 275 peticiones con el User-Agent estándar del cliente y ninguna llevaba correo. La fuga no está en la etiqueta fija del programa. Está en las peticiones que el modelo compone por su cuenta para resolver la tarea del momento.

El antecedente viene de julio. Otro reporte en GitHub, el 81138, abierto el 25 de julio, ya documentaba el correo de la cuenta dentro del contexto del modelo y su aparición en textos generados y en confirmaciones de Git.

Un parche de 171 líneas con rutas abiertas

Anthropic respondió con un módulo integrado llamado cc-plugin-privacy, activo por omisión desde la versión 2.1.317, publicada el 3 de noviembre. El módulo revisa las llamadas de terminal y frena las que contienen a la vez el correo de la cuenta y una mención a User-Agent. Su propio archivo de lectura lo dice sin vueltas: es una cortesía, no una frontera. El código publicado suma 171 líneas en seis archivos.

Las rutas que quedan fuera están escritas en esa misma documentación. Un programa que ya trae el correo dentro pasa, porque la revisión mira la llamada de terminal y no el archivo que se ejecuta. Las herramientas web integradas, WebFetch y WebSearch, quedan fuera, y también las herramientas MCP. Un correo sin mencionar User-Agent, en una dirección web o en el cuerpo de la petición, tampoco dispara el freno.

Una prueba independiente publicada en dev.to corrió el código 23 veces con una dirección falsa: frenó 10 formas directas y dejó pasar 8 variantes, entre ellas el correo en un encabezado From, en autenticación básica o calculado al ejecutar. Usuarios en GitHub reportaron además que en la versión 2.1.319 en macOS un comando de prueba con el correo en una línea User-Agent corrió sin freno, con el módulo activo.

La salida de fondo ya tiene fecha tentativa. Un integrante del equipo de Claude Code respondió este 6 de noviembre que la próxima versión retirará el correo de la cuenta del contexto del modelo, con llegada prevista a principios de la semana entrante. Es un anuncio, no una corrección verificada en la calle. Para quien programa con el agente hoy, la revisión práctica es corta: actualizar a la 2.1.317 o una posterior, confirmar en /plugins que cc-plugin-privacy está activo y leer los comandos con red antes de aprobarlos, sobre todo los que el modelo escribe en archivos. El caso recuerda a los complementos de Postman que entraron a Claude Code y Codex sin permiso: el agente obedece políticas ajenas con la identidad de su dueño.

Fuente: Tin Computer