El botón más conveniente del Claude Code de Anthropic - "Sí, y no volver a preguntar" - se ha convertido silenciosamente en una máquina de fuga de credenciales, según una nueva investigación de la firma de seguridad de aplicaciones Apiiro. Cuando los desarrolladores aprueban un comando que contiene un secreto, Claude Code guarda ese comando exacto, incluido el secreto, en un archivo de configuración local que frecuentemente termina en repositorios públicos de GitHub. El análisis de Apiiro encontró 2539 secretos reales almacenados en 1994 repositorios públicos: contraseñas de bases de datos, claves API de la nube, tokens e inicios de sesión raíz SSH, repartidos en 63 organizaciones, la mayoría de ellas empresas de software. Una empresa afectada confirmó a los investigadores que una clave expuesta estaba activa. Es el segundo incidente de privacidad de Claude Code este mes, luego de la divulgación de correos electrónicos de usuarios a sitios web a través de encabezados User-Agent, y este afecta a la infraestructura de producción, no solo a los detalles de contacto. Seguimos de cerca la seguridad del agente de codificación de IA en nuestra cobertura de herramientas de IA.

Cómo una regla de permiso se convierte en una fuga

El mecanismo es un efecto secundario del sistema de permisos de Claude Code, que solicita aprobación antes de ejecutar comandos de shell, a menudo varias veces por sesión. Pídale al agente que depure una conexión de base de datos o llame a una API interna, y el comando que propone lleva todas las credenciales que requiere esa tarea, porque no puede funcionar sin ellas.

Elija "Sí, y no volver a preguntar" y Claude Code ejecutará el comando y escribirá una regla de permiso en `.claude/settings.local.json` dentro de la carpeta del proyecto. La regla no es una abstracción: es la cadena de comando completa, la contraseña escrita en texto plano y todo.

El archivo está diseñado para permanecer en la máquina del desarrollador, y Claude Code intenta protegerlo, agregándolo a la lista global de ignorados de git del desarrollador. Eso cubre el caso común, pero no los casos extremos: una carpeta que se convierte en un repositorio más adelante, un clon en otra máquina donde el ignorado global no existe, o un archivo que alguien confirmó antes de que se agregara la entrada ignorada. Fundamentalmente, la regla nunca llega al propio `.gitignore` del repositorio, por lo que ninguna protección viaja con el proyecto.

Para agravar el problema, Claude Code a menudo confirma el archivo. En 539 de los 1.105 repositorios donde Apiiro rastreó un secreto real, una confirmación en coautoría de Claude había cambiado el archivo de configuración: confirmaciones que nombran modelos que van desde Sonnet 4.5 hasta Opus 5.5. Apiiro señala que el comportamiento es propio de Claude Code, no del modelo: la empresa lo reprodujo tanto con Opus 5.5 como con Fable 5.1.

La escala de la exposición

Apiiro contó 104.185 copias públicas de `.claude/settings.local.json` en GitHub. De ellos, 1.122 contienen al menos un secreto real. Los investigadores encontraron 1.160 secretos más escondidos en el historial de git del repositorio, en los archivos `settings.json` compartidos que los equipos envían deliberadamente y en las transcripciones guardadas de chat de agentes registradas en los repositorios.

Los ejemplos que documenta Apiiro parecen una lista de verificación de las peores prácticas. Un proveedor de bases de datos expuso su propia clave API de nube de nivel de administrador (con acceso de administración y sin vencimiento) junto con su host de clúster. Una startup B2B filtró una contraseña de producción de Azure Postgres. Una agencia de software expuso un token de acceso a producción de Square. Una empresa de servicios de TI que creaba una aplicación de registros médicos filtró la contraseña del propietario de esa base de datos. A los proyectos de código abierto no les fue mejor: uno con más de 1000 estrellas publicó una clave API en formato OpenAI, otro un token npm.

El contexto de seguridad empeora el hallazgo. El malware que roba credenciales ya barre las máquinas de los desarrolladores en masa: Apiiro señala el gusano npm Shai-Hulud, que ejecutó el escáner TruffleHog sobre los archivos de las víctimas. Ese mismo escáner detectaría 643 de los 1.122 archivos filtrados que encontró Apiiro. Más preocupante es el residuo: uno de cada cinco archivos filtrados no está marcado ni por TruffleHog ni por Gitleaks, generalmente porque el secreto es una contraseña escrita dentro de un comando en lugar de una clave en un formato de token reconocible. En otras palabras, los escáneres secretos son estructuralmente ciegos a esta clase de fugas.

Qué deben hacer los equipos afectados

La guía de remediación de Apiiro comienza con la determinación del alcance del radio de la explosión. Busque en su organización de GitHub `.claude/settings.local.json` y `.claude/settings.json`; cada resultado es un archivo que cualquiera puede leer ahora mismo. Verifique el historial de git de cada repositorio para ver el archivo incluso si se ha eliminado, porque cada bifurcación y clon conserva el historial que contiene. Luego audite las copias locales en cada máquina de desarrollador: cada entrada en la lista de permitidos es un comando que alguien aprobó, con lo que se escribió en él.

El orden de la empresa es importante: rotar primero, limpiar después. Eliminar un archivo de un repositorio no afecta las credenciales que ya eran públicas, y git History mantiene vivos los secretos expuestos indefinidamente.

Un patrón, no algo único

Para Anthropic, el hallazgo llega una semana después de que se descubriera que Claude Code filtraba direcciones de correo electrónico de usuarios a cada sitio web que visitaba a través de encabezados User-Agent, un error solucionado enviando una modificación de privacidad, que los críticos llamaron una curita. Los dos incidentes comparten una causa raíz: un agente que maneja un contexto poderoso (credenciales, detalles de contacto, nombres de host internos) y toma decisiones predeterminadas sobre hacia dónde viaja ese contexto.

La lección se generaliza más allá del Código Claude. A medida que los agentes de codificación se convierten en equipos estándar, los archivos que escriben para organizarse se están convirtiendo en un nuevo rincón no analizado de la cadena de suministro de software. Las cifras de Apiiro sugieren que ya hay fugas a una escala que la mayoría de las organizaciones no han comenzado a medir.

Manténgase por delante de la IA

Las herramientas de inteligencia artificial se envían más rápido de lo que pueden mantener sus revisiones de seguridad. Siga cada desarrollo en nuestra [cobertura de noticias sobre IA] (https://aibuzzwire.news).

Leer más noticias sobre IA →