¿Qué pasó con Claude Code y las contraseñas en GitHub?
Apiiro, una firma de seguridad de aplicaciones, encontró 2.539 secretos reales expuestos en 1.994 repositorios públicos de GitHub, todos vinculados a un archivo que Claude Code crea dentro de la carpeta del proyecto. El origen no fue un atacante ni un comando malicioso: fue un clic en «Sí, y no vuelvas a preguntar».
El mecanismo es simple y por eso mismo peligroso. Claude Code pide permiso antes de ejecutar comandos en la terminal. Cuando el desarrollador elige no volver a ser consultado, la herramienta guarda la regla de permiso en .claude/settings.local.json. Algunas reglas quedan como un patrón corto, del tipo npm test. Otras guardan el comando exacto, palabra por palabra. Si ese comando llevaba una contraseña escrita dentro, el secreto queda en el archivo en texto plano.
Los investigadores reprodujeron el comportamiento con Opus 5.5 y Fable 5.1, lo que apunta a una conducta de la herramienta y no de un modelo concreto. Apiiro comparó 16 agentes de programación y sostiene que Claude Code es el único confirmado que guarda el comando completo aprobado en un archivo del proyecto de forma predeterminada.
Leíste lo que hace la IA. ¿Y en tu negocio?
Un agente de IA puede quedarse con parte de tu día: ordenar lo pendiente y pedirte el OK antes de actuar. El Kit «tu mano derecha con IA» trae un video de 11 minutos y una ficha para dejar al tuyo trabajando. CAR está cerrada por ahora; al anotarte, te avisamos cuando abra.
👥 Quiero el Kit →¿Por qué el archivo terminó en un repositorio público?
Anthropic anota el archivo en la lista global de exclusiones de Git de la máquina del desarrollador. Esa protección vive en los ajustes de una sola persona y no viaja con el proyecto: Claude Code nunca lo anota en el .gitignore del repositorio.
Eso deja tres puertas abiertas: una carpeta que se convierte en repositorio después, un clon en otra computadora, o un archivo que ya entró al historial. Apiiro contó 104.185 copias públicas del archivo en 103.617 repositorios. De esas, 1.122 contenían al menos un secreto real, y en 539 de 1.105 repositorios rastreados un commit con Claude como coautor fue el que modificó el archivo.
¿Qué tipo de credenciales quedaron expuestas?
El desglose que publicó Apiiro es el que debería preocupar a cualquier equipo: 379 contraseñas de bases de datos, 43 accesos SSH a servidores públicos (algunos con la contraseña de root dentro de un comando sshpass), 42 tokens de GitHub, GitLab y npm, 23 claves de AWS y 122 claves de rol de servicio de Supabase. Más de un tercio de los secretos abre directamente una base de datos.
Entre los casos graves hay un token de producción de Square y la contraseña del propietario de una base de datos de expedientes médicos. Los secretos tocan a 63 organizaciones, casi todas empresas de software. Una de las organizaciones avisadas confirmó que su clave seguía activa.
Y borrar el archivo no cierra el agujero. Al 2 de noviembre, cada archivo con secretos seguía en la rama principal de su repositorio, y en la mitad llevaba allí al menos 217 días. Las versiones antiguas guardan 734 secretos más en 509 repositorios, y 211 bifurcaciones cargan los mismos valores del original.
¿Por qué los escáneres de secretos no lo detectaron?
Apiiro pasó Gitleaks y TruffleHog sobre las 104.185 copias. Marcaron 564 y 643 de los 1.122 archivos con secretos, pero 215 escaparon a los dos. La razón es que estos programas buscan formatos de clave conocidos: un prefijo de proveedor, una cadena larga y aleatoria. Una contraseña escrita después de PGPASSWORD= o mysql -p parece una palabra común dentro de una línea de comandos, y ambos la dejan pasar.
Para un equipo pequeño esto cambia el cálculo: tener un escáner activo no equivale a estar cubierto.
¿Qué dice Anthropic?
La empresa no publicó un comunicado. Boris Cherny, responsable de Claude Code, respondió en Hacker News y admitió que la herramienta nunca ha limpiado los secretos de lo que guarda. Defendió que el archivo está pensado para quedarse en local y sostuvo que, como Claude Code lo excluye de Git al crearlo, los archivos filtrados se crearon a mano y se subieron después.
Cherny recomendó usar el modo automático en lugar de las listas de permisos y activar el escaneo de secretos en el repositorio «sin importar qué agente uses». También adelantó que el equipo está probando dos mejoras: que el modo automático detecte el filtrado de datos y un escáner básico de secretos integrado. No hay fecha para ninguno de los dos cambios.
El aviso venía de antes. Un reporte del 11 de agosto de 2025 ya señalaba que los comandos aprobados con claves quedaban guardados palabra por palabra en ese archivo. Un bot lo cerró el 3 de enero tras 60 días sin actividad, y según Apiiro los cuatro reportes relacionados corrieron la misma suerte, sin respuesta de Anthropic en ninguno.
¿Qué significa esto para tu startup?
Si tu equipo usa agentes de codificación, este caso no es una anécdota de seguridad ajena: es un riesgo que ya está en tus repositorios si alguien aprobó un comando con credenciales dentro.
El contexto lo agrava. Según el informe Octoverse 2026 de GitHub, en los doce meses previos al 30 de septiembre se registraron 17.900 millones de pushes y 34.300 millones de commits, y esa cifra de pushes supera a la de 2024 y 2025 juntas. En septiembre, más del 40% de las pull requests tenían como origen un agente de IA; en marzo era el 17%. Más código generado por agentes significa más archivos de configuración de agentes viajando junto al código.
Tampoco es el primer tropiezo de esta superficie. En abril de 2026, una filtración accidental del código interno de Claude Code llevó a GitHub a retirar más de 8.100 repositorios por una notificación de derechos de autor de Anthropic, según Europa Press. Y en junio de 2026, el gusano Miasma comprometió 73 repositorios de Microsoft con un payload que se activaba al abrir el proyecto en Claude Code, Cursor o VS Code, según el análisis de StepSecurity recogido por WWWhat’s New. El agente de codificación es la nueva puerta de entrada.
Acciones concretas para hoy
- Busca el archivo en todos tus repositorios y en su historial. No basta con quitarlo de la rama actual:
git log --all -- .claude/settings.local.jsonte dice si alguna vez estuvo ahí. - Rota primero, borra después. Si un secreto pasó por un repositorio público, cambiar la contraseña o el token es el único remedio real. Quitar el archivo no limpia el historial, las bifurcaciones ni los clones.
- Saca el archivo del control de versiones con
git rm --cached .claude/settings.local.jsony añádelo al.gitignoredel proyecto, no solo al global de tu máquina. - Trata las carpetas de agentes como un
.env..claude/,.cursor/,.gemini/y los archivos de memoria del agente pueden contener credenciales. Apiiro también encontró secretos en transcripciones de chat, notas de despliegue y configuraciones de autoaprobación de VS Code Copilot subidas a GitHub. - Usa variables de un gestor de secretos. Si el comando referencia
$DB_URLen lugar del valor, la regla guardada conserva el nombre y no la contraseña. - Aprueba permisos como patrones, no como comandos.
Bash(npm run:*)en lugar del comando completo con credenciales dentro.
La lección de fondo
Los agentes de codificación funcionan porque tienen permisos amplios para leer, escribir y ejecutar en la máquina del desarrollador. Esa confianza es exactamente lo que los vuelve útiles y lo que los vuelve peligrosos. La comodidad de no volver a responder una pregunta es razonable; el problema es que la herramienta guardó el contenido del comando, no solo su intención.
Mientras Anthropic no publique una solución definitiva, la supervisión sigue siendo humana. Revisar qué entra al repositorio dejó de ser una tarea de equipo grande: con agentes escribiendo commits, es una rutina semanal básica para cualquier startup que tenga algo que perder.
Fuentes
- Xataka (fuente original)
- Ars Technica
- Notebookcheck
- Cybernews
- TecnologíaGeek
- Europa Press
- WWWhat’s New
Leíste lo que hace la IA. ¿Y en tu negocio?
Un agente de IA puede quedarse con parte de tu día: ordenar lo pendiente y pedirte el OK antes de actuar. El Kit «tu mano derecha con IA» trae un video de 11 minutos y una ficha para dejar al tuyo trabajando. CAR está cerrada por ahora; al anotarte, te avisamos cuando abra.
👥 Quiero el Kit →













