Volver a la Biblioteca
Seguridad y gobernanza

El 1,4 % de los usuarios de Console, todas las claves de proveedor: lo que la brecha de OpenCode enseña sobre las credenciales de IA concentradas

Última actualización: 2 de noviembre de 2026

Conclusiones clave

  • Un intruso alcanzó un sistema heredado detrás de la Console alojada de OpenCode la noche del 16 de octubre de 2026 y expuso las claves de API de OpenAI, Anthropic y Google del 1,4 % de los usuarios de Console — las claves que los usuarios habían guardado para que sus equipos nunca las vieran (OpenCode en X, nota de investigación de CSA).
  • El uso indebido autodeclarado golpeó cuentas individuales con 281 dólares en OpenAI y 168 en Anthropic, con un caso notificado de 1.700 dólares — y como las claves son credenciales de portador, las claves copiadas gastaron hasta que cada proveedor las revocó (TechCrunch).
  • Eliminar una clave en Console no sirvió de nada; solo el proveedor podía invalidar lo que ya se había exfiltrado — Anthropic y Google bloquearon las claves expuestas a gran escala, y OpenAI reembolsó a los clientes de API afectados (TechCrunch).
  • La contención del incidente se atascó en un filtro de seguridad: los modelos frontera se negaron a analizar los cargas maliciosas a mitad de respuesta, hasta obtener acceso verificado mediante el programa Daybreak Blue de OpenAI — la misma pared que Hugging Face documentó en julio («las salvaguardas no pueden distinguir a quien responde un incidente de un atacante») (TechCrunch, Hugging Face).
  • A 2 de noviembre de 2026 — dieciséis días después — OpenCode no ha publicado ninguna causa raíz, post-mortem ni cifra de pérdida total, y la atribución al «ataque de destilación a gran escala» sigue en disputa; la lección sobre la concentración se mantiene sea cual sea el desenlace (StepSecurity, CSA).

En los equipos que guardaron una clave de OpenAI, Anthropic o Google en la Console alojada de OpenCode, cada desarrollador tomó la misma decisión local defendible: sacar la clave de los shells, los archivos de configuración y los registros de chat, y dejar que la herramienta alojada llamara al proveedor en nombre del equipo. El 16 de octubre de 2026, esas decisiones se compusieron en una única superficie de ataque. Un intruso alcanzó un sistema heredado detrás de OpenCode Console, la capa alojada donde los equipos comparten proveedores de modelos, y las claves del 1,4 % de los usuarios de Console se fueron con él (OpenCode en X, CSA). En cuestión de horas, los desarrolladores publicaban alertas de gasto que se dispararon a la vez en tres cuentas de proveedor — una persona notificó 281 dólares en cargos de OpenAI y 168 de Anthropic antes de acostarse, y otra notificó un total superior a 1.700 dólares (TechCrunch).

Este artículo mapea lo que el incidente demuestra sobre un patrón que ya carga todo despliegue de agentes de IA: una herramienta alojada que custodia sus credenciales de proveedor es un proveedor que custodia sus relaciones de IA, y la revocación vive en el proveedor, no en la herramienta. Se apoya en MCP Events: When a Subscription Becomes a Credential You Cannot Revoke, que cubrió el hueco de vida de la suscripción que convierte los eventos de MCP en una credencial que no se puede revocar de forma limpia; aquí el hueco corre en la dirección contraria — la herramienta custodia la credencial, y su única palanca sobre una copia ya tomada está en el proveedor que la emitió.

Qué ocurrió, en el orden verificado

La cronología verificada es breve, porque el proveedor ha publicado poco:

  • 16 de octubre (noche): el intruso alcanzó un sistema antiguo detrás de OpenCode Console — una plataforma heredada que la empresa estaba desmantelando (CSA).
  • 17 de octubre: OpenCode divulgó la brecha en X, situó el alcance en el 1,4 % de los usuarios de Console y envió un correo a cada usuario afectado bajo el asunto «Action Required: Potential provider key breach». El cofundador Dax Raad aclaró el límite — «esto es la OpenCode Console, no OpenCode en sí, esas claves nunca llegan a nosotros»; el CLI de código abierto no se vio afectado (TechCrunch).
  • 17–18 de octubre: Anthropic y Google bloquearon las claves de API que consideraron expuestas (TechCrunch). OpenAI colaboró con OpenCode en la remediación y reembolsó a los clientes de API afectados por los créditos usados en el ataque.
  • En marcha: los cargos notificados por los usuarios se acumulaban — 281 dólares OpenAI / 168 Anthropic, unos 400 dólares en cargos de Anthropic y unos 200 euros en cargos de Google según otros informes, y un total autodeclarado de 1.700 dólares (CSA). OpenCode dijo que los reembolsos por cargos no autorizados estaban en marcha.
  • Aún sin publicar a 2 de noviembre: una causa raíz, un post-mortem, una cifra de pérdida total, si las claves almacenadas estaban cifradas y la lista exacta de proveedores — el resumen de Cyera incluye OpenRouter entre los tipos de clave expuestos, mientras que The Hacker News cita OpenAI, Anthropic y Google (CSA, Cyera).

El marcador de honestidad importa: OpenCode atribuyó el suceso a «un ataque de destilación a gran escala», y los investigadores discreparon en cuestión de horas — Nathan Lambert tildó el encuadre de exageración, argumentando que el incidente parecía una brecha directa cuyo uso para destilación no estaba demostrado (TechCrunch). La destilación en sí es una amenaza real — Anthropic documentó campañas con unos 24.000 cuentas fraudulentas que generaron más de 16 millones de intercambios para entrenar con salidas de Claude — pero nadie ha ligado públicamente la intrusión de OpenCode a ella. Las claves robadas son un insumo plausible para ese mercado; la plausibilidad no es atribución. Contexto de escala: OpenCode es uno de los repositorios con más estrellas de GitHub con 217.000 estrellas, de modo que la superficie expuesta no era un experimento lateral — era uno de los mayores proyectos de IA de código abierto en uso en producción.

El patrón: concentración de credenciales en herramientas de agentes alojadas

La estructura de la brecha importa más que su tamaño. Cada espacio de trabajo de Console que almacenó una clave de proveedor resolvió un problema real a nivel local — la clave dejó de filtrarse por las máquinas de los desarrolladores. En agregado, ese mismo diseño produjo una bóveda con credenciales vigentes de varios proveedores sin relación entre sí, detrás del perímetro de seguridad de una sola empresa que sus clientes no pueden observar. Un atacante que alcanza la bóveda no necesita comprometer a OpenAI, Anthropic o Google, ni a una sola máquina de cliente; la herramienta alojada es el punto único de exposición de todas las relaciones con proveedores que los usuarios le encomendaron (CSA).

Las claves de proveedor lo agravan más que la mayoría de los secretos, porque son credenciales de portador permisivas: normalmente no se vinculan a ningún dispositivo, red o sesión, y gastan en la cuenta del cliente salvo que se configuren claves más restrictivas por proyecto y límites de gasto. Una clave robada funciona de inmediato, desde cualquier lugar y a su costa — exactamente lo que mostraron los informes de cargos no autorizados (CSA). La misma estructura apareció a principios de mes en otra forma: el análisis de CSA de la cadena de vulnerabilidades de la pasarela LiteLLM documenta una pasarela que custodia claves de proveedor corporativas, donde una sola exposición descubre credenciales de todos los servicios anteriores a los que sirve. La arquitectura difiere; la concentración es la misma.

El detalle del sistema heredado merece línea propia. El sistema al que llegó el intruso estaba en proceso de desmantelamiento — los sistemas destinados a eliminación suelen recibir menos parches, menos monitorización y revisiones de acceso más débiles mientras siguen conteniendo datos de producción (CSA). Un almacén de credenciales no son «datos antiguos». Hasta que la migración y la eliminación terminan, un sistema en desmantelamiento es una bóveda en vigor.

La revocación es asimétrica — y vive en el proveedor, no en la herramienta

La asimetría operativa es la lección más transferible del incidente. Eliminar una clave de OpenCode Console retira la copia del proveedor; no hace nada contra una copia ya exfiltrada a las 2 de la madrugada del 16 de octubre. Solo el proveedor emisor puede invalidar la credencial — por eso tanto CSA como Cyera subrayan el mismo procedimiento: revocar y reemitir en el panel de cada proveedor, nunca solo en la herramienta de agente (CSA, Cyera).

Esa asimetría se separa de manera limpia en el diagrama siguiente:

La brecha de OpenCode Console: concentración y las dos vías de revocación Una bóveda alojada custodiaba claves de muchos proveedores. Eliminar en la herramienta es contabilidad; revocar en el proveedor es contención. Cómo se formó la bóveda Espacio de trabajo A Clave de OpenAI Espacio de trabajo B Clave de Anthropic Espacio de trabajo C Claves de Google + OpenRouter ... todos los usuarios de Console 1,4 % identificados y afectados Bóveda alojada de OpenCode Console Claves de proveedor en vigor, un perímetro, una postura de seguridad que los clientes no pueden observar Intruso — sistema heredado en retirada 16-oct-2026, nocturno · divulgado el 17 1,4 % de los usuarios de Console · claves exfiltradas Credenciales de portador: sin vínculo a dispositivo ni sesión Copia tomada una vez, gasta en cualquier lugar, a su costa Dónde funciona realmente la revocación Vía 1 — eliminar en Console Retira solo la copia del proveedor No hace nada contra la copia exfiltrada Una copia ya robada sigue gastando No es contención Vía 2 — revocar en el proveedor Revocar + reemitir en el panel de cada proveedor: OpenAI · Anthropic · Google · cualquier otro listado Anthropic y Google bloquearon claves a gran escala; OpenAI reembolsó a los clientes de API afectados Contención — el emisor mata la credencial Después, la auditoría Revisar uso y facturación de proveedores desde el 16 de octubre Fijar límites de gasto duros en cada cuenta de proveedor Acotar claves por proyecto o por usuario Los presupuestos de Console no frenan una clave robada usada directamente ! La pared de respuesta — notificada a mitad del incidente, no especulación Los modelos frontera se negaron a analizar los cargas maliciosas: los filtros de seguridad no distinguían respondedor de atacante Hugging Face chocó con la misma pared en julio — «las salvaguardas no pueden distinguir a quien responde un incidente de un atacante» El acceso verificado vía el programa Daybreak Blue de OpenAI devolvió al equipo la capacidad de investigar La ventana de 48 horas de divulgación a defensa de OpenCode corrió con agentes defensivos — planifique su herramienta de IR antes de necesitarla Sin publicar a 2 de noviembre: causa raíz · post-mortem · pérdida total · cifrado de claves · lista exacta de proveedores · atribución de destilación (en disputa) La lección sobre la concentración se marque como se marque cada pregunta abierta Eliminar una clave en la herramienta de agente es contabilidad. Revocar en el proveedor es contención. 1,4 % afectados · 168–1.700 dólares en cargos autodeclarados · revocación en OpenAI, Anthropic y Google — en ese orden

La tercera capa de la asimetría es el tiempo. Como el abuso automatizado suele empezar justo después de que las credenciales se expongan, la auditoría debe alcanzar cualquier proveedor que pudiera haber custodiado una clave vinculada — revisar uso y facturación desde el 16 de octubre en adelante, en cada cuenta de proveedor, haya o no llegado un correo de OpenCode (Cyera, CSA). La cifra del 1,4 % no transfiere confianza: solo OpenCode sabe cómo la derivó, y un equipo cuyas claves estaban guardadas en Console pero no recibió correo no puede tratar el silencio como autorización. La rotación es barata; la exposición que evita no tiene límite.

La pared de respuesta: cuando la respuesta al incidente choca con sus propias salvaguardas

El incidente añadió un dato a un problema que tenía nombre antes de tener un segundo caso. Mientras el equipo de OpenCode operó agentes de IA defensivos a todas horas durante 48 horas de intentos de ataque continuos, los modelos que usaban para el análisis empezaron a negarse a examinar el código malicioso — las cargas disparaban los filtros de seguridad. OpenCode consiguió después acceso al programa Daybreak Blue de OpenAI, que otorga a usuarios verificados modelos menos proclives a negarse a trabajos de seguridad defensiva, y el acceso mejoró la investigación (TechCrunch).

Es el patrón de julio repetido en una empresa más pequeña. Cuando Hugging Face analizó la intrusión de agentes de IA autónomos en su infraestructura, los modelos comerciales bloquearon el análisis de registros; la sección de su blog titulada «The asymmetry problem» enuncia el hecho operativo con precisión — las salvaguardas «no pueden distinguir a quien responde un incidente de un atacante» (Hugging Face). La pared de respuesta es ahora un parámetro recurrente de los incidentes: dos empresas, en plena crisis, vieron cómo su propia herramienta de análisis se negaba a analizar. La implicación de gobernanza no es que las salvaguardas deban relajarse a mitad de incidente — es que los planes de incidentes deben asumir que la triaje asistida por IA se atascará en los filtros de seguridad y prever de antemano la vía de acceso verificado, como hizo OpenCode solo después de que la pared le retrasara.

David Sacks, copresidente del Consejo Asesor de Ciencia y Tecnología de la Presidencia, señaló públicamente que las salvaguardas se volvieron en contra a mitad de ataque tanto para OpenCode como para Hugging Face (TechCrunch). La atención política ha llegado; el cambio ejecutable sigue estando del lado del comprador.

Cuatro controles que sobreviven a cualquier pregunta abierta

Ningún dato divulgado hasta ahora dice al comprador si las claves de su Console estaban cifradas. No se necesita ninguno para adoptar estos controles:

  1. Inventariar qué herramientas custodian qué claves de proveedor. El fallo empieza porque la concentración es invisible hasta que se breach. Pregunte a cada herramienta de IA alojada que su equipo use — agentes de código, plataformas de chat, pasarelas — exactamente qué credenciales de proveedor almacena.
  2. Tratar esas herramientas como proveedores de credenciales en la diligence. Una herramienta que custodia sus claves de proveedor custodia sus relaciones de IA. Pregunte cómo se almacenan las claves, si están cifradas y por quién, y qué revisión de acceso recibe la vía de desmantelamiento — CSA mapea los dominios correspondientes en su AI Controls Matrix (gestión de identidad y acceso, criptografía y gestión de claves, cadena de suministro).
  3. Convertir la rotación en rutina, no en emergencia. Rote las claves de proveedor según calendario y ante cualquier anuncio de incidente de un proveedor alojado, porque el compromiso de la bóveda de un proveedor solo es visible para usted cuando el proveedor decide decírselo.
  4. Acotar y limitar en el proveedor. Las claves acotadas por proyecto y los límites de gasto duros fijados en el panel del proveedor son los únicos límites que contienen una clave robada usada directamente contra el proveedor — los presupuestos de la herramienta alojada no pueden (Cyera).

Añada a la misma lista la regla del desmantelamiento: la migración de datos y la eliminación completadas antes de tratar un sistema como de baja prioridad. El sistema que OpenCode perdía era uno que ya retiraba, y aun así contenía claves de clientes.

Lecturas relacionadas


El equipo de ingeniería de un distribuidor de tamaño medio guardó una clave compartida de Anthropic en la consola alojada de su herramienta de código de IA porque mantenía la clave fuera de cada portátil y archivo de configuración. Una noche de martes, el proveedor de la herramienta divulgó una brecha de su propio sistema heredado. El equipo eliminó la clave de la herramienta, puso su panel de presupuesto a cero y siguió adelante. Cuatro días después, el controller preguntó por qué la factura de Anthropic mostraba 740 dólares de uso sin atribuir — la copia del proveedor estaba eliminada, pero la copia que un intruso había tomado era una credencial de portador en vigor hasta que Anthropic la revocó, y nadie había revisado la facturación de proveedores desde la fecha de la intrusión. El widget de presupuesto del proveedor no intervino nunca.

Solicite una implementación acotada. Una semana de descubrimiento. Recibirá un inventario de sistemas, un mapa de flujos y un alcance fijo — decida o no construir con nosotros.

¿Quieres esto construido para tus sistemas?

Cada documento aquí viene de trabajo real de producción. Si tienes un sistema objetivo y un flujo en mente, podemos definir un proyecto en una semana.

Solicitar un proyecto

Descubrimiento de una semana. Obtienes un inventario de sistemas, mapa de flujos y alcance fijo — decidas o no construir con nosotros.