Filtración en OpenCode Console expone claves de proveedores de IA
El incidente afectó al 1,4% de los usuarios de la consola hospedada y derivó en cargos no autorizados en cuentas de OpenAI, Anthropic y Google. La causa raíz y el vector de entrada siguen sin confirmarse.
- OpenCode, proveedor de un agente de codificación open source, informó el 17 de octubre de 2026 que un atacante accedió a un sistema legado detrás de su servicio hospedado Console, afectando al 1,4% de los usuarios que habían guardado ahí sus claves de OpenAI, Anthropic o Google.
- Varios usuarios reportaron cargos no autorizados en sus cuentas poco después del aviso (montos entre USD 168 y USD 1.700, y cerca de EUR 200), pero esas cifras son autorreportadas y no han sido verificadas de forma independiente.
- El caso ilustra un riesgo estructural, no anecdótico: toda consola que guarda claves de varios proveedores de IA en nombre de sus clientes concentra en un solo punto la exposición de varias relaciones de confianza distintas, y borrar la clave en esa consola no revoca la copia ya sustraída.
Qué pasó
Este análisis parte de una nota de investigación de Cloud Security Alliance (CSA Labs), que a su vez sintetiza coberturas de prensa y de proveedores de seguridad sobre un aviso enviado por OpenCode a sus clientes. CSA Labs no es fuente primaria del incidente: cada dato aquí se atribuye a quien lo reportó originalmente.
OpenCode ofrece, además de su agente de línea de comandos, un servicio hospedado llamado Console, donde un equipo guarda su propia clave de OpenAI, Anthropic o Google y Console la usa para llamar al proveedor en su nombre. Según la cobertura basada en el aviso de OpenCode, un atacante alcanzó la noche del 16 de octubre un sistema legado que estaba en proceso de ser dado de baja, y la empresa notificó por correo a la mañana siguiente bajo el asunto "Action Required: Potential provider key breach" (The Hacker News, Cyera).
Los datos duros que entregó OpenCode son escasos: afectó al 1,4% de los usuarios de Console que tenían vinculado un proveedor externo, y la empresa atribuyó el hecho a lo que llamó, en sus propias palabras, "a large scale distillation attack" (citado por The Hacker News y OrcaRouter). No explicó cómo esa caracterización se relaciona con la intrusión, quién sería responsable, ni si las claves estaban cifradas en reposo. Rescana señala explícitamente que no hay evidencia directa que vincule el hecho a un actor nombrado.
Usuarios reportaron cargos no autorizados poco después del aviso: USD 281 en una clave de OpenAI y USD 168 en una de Anthropic para un mismo usuario, USD 1.700 sin especificar proveedor para otro, y montos cercanos a USD 400 en Anthropic y EUR 200 en Google para otros casos (The Hacker News). Son autorreportes, no cifras auditadas, y OpenCode no ha confirmado el total de abuso ni publicado un post-mortem o causa raíz hasta el 19 de octubre, fecha del último reporte disponible.
Evaluación (confianza media): la palabra "distillation" no es casual. Anthropic documentó a mediados de 2026 campañas de extracción de capacidades de modelos mediante miles de cuentas falsas y millones de interacciones con Claude. Claves de proveedor robadas son una vía plausible para lograr ese volumen de acceso sin crear cuentas rastreables. Esto es una lectura razonable del contexto, no algo que OpenCode haya confirmado; la explicación alternativa que no podemos descartar es que "distillation attack" sea simplemente el término que OpenCode eligió para describir la intrusión en sí, sin relación con el uso posterior de las claves.
Por qué importa acá
No tenemos evidencia de que alguna organización chilena o latinoamericana haya sido notificada por OpenCode, y no vamos a inventar una bajada local donde no la hay. Lo que sí es verificable es que este patrón —agentes de codificación con IA integrados al flujo de desarrollo, con claves de OpenAI, Anthropic o Google pegadas en herramientas de terceros— es exactamente el que CSA describe como creciente en equipos de desarrollo de cualquier país, y Chile no es una excepción: fintechs, software factories y áreas de desarrollo interno usan este tipo de herramientas con la misma informalidad que se ve en el resto de la región.
Dos marcos locales entran en juego, con matices importantes:
- Ley 21.663 (marco de ciberseguridad): la obligación de reportar a ANCI aplica a Operadores de Importancia Vital y organismos del Estado, y solo si la entidad chilena es la afectada directamente. Si un OIV chileno usó OpenCode Console y tuvo una clave expuesta, el deber de reporte se activa; hoy no tenemos ninguna señal de que eso haya ocurrido, así que la respuesta honesta es no sabemos, no un supuesto.
- Ley 21.719 (protección de datos personales): si una clave robada se usó para hacer inferencias no autorizadas sobre modelos que procesan datos personales de clientes chilenos, la organización que delegó esa clave —no OpenCode— es la responsable del tratamiento frente a la autoridad de protección de datos cuando la ley entre en plena vigencia. Vale la pena que los equipos de cumplimiento empiecen a mapear esto ahora, antes de que un incidente similar los tome por sorpresa.
Más allá del marco legal, el valor práctico de este caso para cualquier equipo de TI en Chile es el mismo que señala CSA: si tu organización permite que desarrolladores peguen claves de proveedor en consolas hospedadas de terceros, esa clave hereda la postura de seguridad de ese tercero, no la tuya.
Anatomía del ataque
Mapeo a marcos públicos, para que puedas cruzarlo con tu propia matriz de cobertura.
T1552— Las claves de proveedor quedaron almacenadas en un sistema legado de un tercero (Console), fuera del control directo de las organizaciones dueñas de las credenciales.T1078— Las claves de API funcionan como credenciales válidas de cuenta ante OpenAI, Anthropic y Google; un atacante que las obtiene no necesita comprometer al proveedor ni al cliente final para usarlas.AML.T0034— Los cargos no autorizados reportados por usuarios (de USD 168 a USD 1.700) son consistentes con uso intensivo de inferencia pagada con credenciales ajenas; es el efecto observable, independiente de si hubo o no destilación de modelos.AML.T0024— Evaluación de confianza baja: encaja con el relato de OpenCode sobre un 'ataque de destilación a gran escala', pero la empresa no ha explicado cómo esa caracterización se vincula con el robo de claves, así que no se puede confirmar que esta técnica se haya ejecutado en este caso específico.
Estructurado sobre las seis funciones del NIST CSF 2.0, según el ciclo de respuesta a incidentes de NIST SP 800-61r3 (abril 2025, reemplaza al r2). Proteger y Detectar vienen abiertas.
GV GobernarQuien decide, que se reporta y a quien
La decisión de gobierno real aquí es previa al incidente: qué categorías de credenciales se permite que una herramienta hospedada de terceros almacene en nombre de la organización. El AICM v1.1 de CSA —en sus dominios de gestión de identidad y acceso, gestión de claves criptográficas y cadena de suministro— es la referencia natural para construir esa política y para exigir evidencia a proveedores de agentes de IA hospedados. En Chile, el deber de reportar a ANCI bajo la Ley 21.663 solo se activa si la entidad afectada es un Operador de Importancia Vital o un organismo del Estado y fue ella la que sufrió la exposición directa; no hay a la fecha ninguna señal pública de que eso haya ocurrido con OpenCode en el país.
- Definir una política formal que distinga entre claves de corta vida o con alcance acotado (aceptables para terceros) y claves de cuenta de larga duración (a evitar en consolas de terceros)
- Revisar si algún equipo de desarrollo usa OpenCode Console u otra consola hospedada equivalente y escalarlo al oficial de seguridad
- Incorporar el AICM v1.1 a la checklist de debida diligencia de proveedores de herramientas de IA para desarrollo
ID IdentificarSi esto me toca, por donde me toca
El primer paso práctico es saber si esto aplica. La exposición no se limita a OpenCode: cualquier consola de agente de codificación, gateway de IA o extensión de IDE que guarde claves de proveedor en nombre del equipo es candidata al mismo problema.
- Levantar un inventario de equipos que usan OpenCode u otras consolas de agentes de codificación con IA
- Identificar todas las claves activas de OpenAI, Anthropic y Google y dónde están almacenadas (local, gestor de secretos propio, o consola de terceros)
- Revisar si alguna clave fue pegada en herramientas hospedadas de terceros en los últimos meses, no solo en OpenCode
PR ProtegerComo evito que ocurra
El control de fondo es reducir qué puede hacer una clave robada, no solo intentar que no la roben. Detalle de controles priorizados en proteger.controles.
- Rotar y escopar las claves de proveedor según el detalle de controles P1/P2
- Preferir arquitecturas donde la clave nunca sale del entorno propio del cliente
Controles priorizados
P1: esta semana · P2: este mes · P3: este trimestre
| Prio | Control | Esfuerzo | Mapeo |
|---|---|---|---|
| P1 | Rotar en el panel de cada proveedor (no solo eliminar en la herramienta de terceros) toda clave de OpenAI, Anthropic o Google guardada en una consola hospedada | bajo | MITRE ATT&CK M1018 CIS Controls v8 5.3 ISO 27001 A.5.17 |
| P1 | Revisar consumo y facturación de cada proveedor desde el 16 de octubre en busca de llamadas desde países, modelos o volúmenes inusuales | bajo | MITRE ATT&CK M1047 CIS Controls v8 8.2 ISO 27001 A.8.16 |
| P2 | Emitir una clave separada por herramienta/proyecto y fijar topes de gasto y alertas de uso en cada proveedor | medio | MITRE ATT&CK M1026 CIS Controls v8 6.8 ISO 27001 A.8.3 |
| P2 | Mantener un inventario de todo servicio de terceros (consolas de agentes, gateways LLM, extensiones de IDE) que almacene claves de proveedor de IA en nombre del equipo | medio | MITRE ATT&CK M1047 CIS Controls v8 15.1 ISO 27001 A.5.19 |
| P2 | Incluir la exposición de claves de proveedores de IA como categoría propia en el runbook de incidentes, con dueños nombrados y un objetivo de revocación definido | bajo | MITRE ATT&CK M1047 CIS Controls v8 17.1 ISO 27001 A.5.24 |
| P3 | Migrar, donde sea viable, hacia una arquitectura en que la clave del proveedor nunca salga del entorno propio (agente local con secretos en un gestor propio) en lugar de centralizarla en una consola de terceros | alto | MITRE ATT&CK M1041 CIS Controls v8 3.11 ISO 27001 A.8.24 |
Ningún control de esta lista depende de que se confirme la causa raíz del incidente de OpenCode. Son medidas que reducen el daño de cualquier robo futuro de claves de proveedor de IA, ocurra donde ocurra.
DE DetectarComo me doy cuenta de que ya ocurrio
No existen IOCs técnicos públicos asociados a este incidente —no hay IPs, dominios ni hashes de malware que detectar—, porque el vector fue el robo de credenciales dentro de la infraestructura de un tercero. La detección realista es conductual: anomalías en el uso y la facturación de las propias cuentas de OpenAI, Anthropic y Google. Las reglas siguientes son de estado experimental porque dependen de que la organización exporte logs de uso/facturación del proveedor hacia su SIEM, algo que hoy pocas empresas en Chile hacen por defecto.
- Exportar logs de uso y facturación de OpenAI, Anthropic y Google al SIEM (nativamente o vía gateway LLM / CASB)
- Desplegar la regla de 'clave usada desde múltiples países en ventana corta' como primera línea de detección
- Mientras se construye la ingesta al SIEM, activar las alertas nativas de gasto de cada proveedor como respaldo
Qué necesitas tener logueado
- Logs de uso y facturación de la API de OpenAI (exportación nativa o vía gateway)
- Logs de uso y facturación de la API de Anthropic
- Logs de uso y facturación de Google Generative AI / Vertex AI
- Registros de un gateway LLM o CASB si la organización centraliza el acceso a modelos de IA
Reglas y consultas de detección
title: Uso de clave de proveedor de IA desde múltiples países en ventana corta
id: 7f3a9d2e-4c6b-4a1f-8e2d-9b5c1a7f3d64
status: experimental
description: Detecta el uso de la misma api_key_id de OpenAI, Anthropic o Google desde más de un país en una ventana de 15 minutos, patrón consistente con una clave de proveedor de IA robada y usada en paralelo por un tercero.
author: Vantis
date: 2026-10-20
references:
- https://labs.cloudsecurityalliance.org/research/csa-research-note-opencode-console-provider-key-breach-20261/
logsource:
category: application
product: ai_provider_api
definition: 'Requiere normalizar en el SIEM los logs de uso/facturación de OpenAI, Anthropic o Google (exportación nativa, CASB o gateway LLM) con los campos api_key_id, src_country y cost_usd.'
detection:
selection:
api_key_id|exists: true
timeframe: 15m
condition: selection | count(src_country) by api_key_id > 1
falsepositives:
- Equipos distribuidos que usan VPN corporativa con salida en distintos países
- Despliegues multi-región legítimos que comparten una misma clave de proyecto
level: medium
tags:
- attack.credential_access
- attack.t1552
- attack.t1078
index=ai_provider_logs sourcetype=api_usage earliest=-15m | stats dc(src_country) as paises_distintos sum(cost_usd) as costo_total values(src_country) as lista_paises by api_key_id | where paises_distintos > 1 | sort - costo_total
let ventana = 15m; AIProviderUsageLogs_CL | summarize paises=dcount(src_country_s), costo=sum(cost_usd_d) by api_key_id_s, bin(TimeGenerated, ventana) | where paises > 1 | order by costo desc
Equipos de desarrollo distribuidos geográficamente, uso de VPN corporativa con salida en distintos países, y despliegues multi-región que comparten intencionalmente una misma clave de proyecto generarán alertas legítimas. Antes de desplegar en modo bloqueo, correr la regla en modo solo-alerta durante al menos dos semanas para calibrar el umbral de países distintos y el costo asociado al perfil normal de cada equipo.
RS ResponderContencion y erradicacion
La guía pública sobre este caso —y la lógica del propio incidente— es clara en un punto: borrar la clave en OpenCode no la revoca. Solo el proveedor que la emitió puede invalidarla.
- Revocar de inmediato, en el panel de cada proveedor (no solo en OpenCode), toda clave que haya sido guardada en Console
- Emitir claves de reemplazo y actualizar todas las aplicaciones y scripts que usaban las anteriores
- Resetear la contraseña de la cuenta de OpenCode asociada
- Revisar consumo y facturación desde el 16 de octubre en adelante en busca de llamadas desde países, modelos o volúmenes inusuales
RC RecuperarVolver a operar y no repetirlo
La recuperación no termina con la rotación: incluye confirmar el alcance real del gasto indebido y ajustar el runbook para que la próxima vez la respuesta sea un procedimiento, no una improvisación.
- Confirmar con facturación/finanzas qué cargos reportados corresponden efectivamente a uso no autorizado antes de disputarlos con el proveedor
- Incorporar la exposición de claves de proveedores de IA como categoría propia en el runbook de incidentes, con dueños nombrados y un objetivo de revocación (por ejemplo, un día hábil)
- Evaluar migrar los equipos de desarrollo hacia una arquitectura donde la clave del proveedor nunca salga del entorno propio
Llévatelo
Lo de arriba explica. Esto se ejecuta. Son archivos, no capturas de pantalla: se abren, se pegan y funcionan.
La regla Sigma es la canónica: es el formato neutral del que se derivan las demás. Si tu SIEM no aparece en la lista, esa se convierte con pySigma. Las traducciones a motores concretos van sin validar contra tu modelo de datos — revisa los nombres de tabla y campo antes de subirlas a producción.
Fuentes
- Cloud Security Alliance (CSA Labs)OpenCode Console Breach: Concentrated Provider Keys at Risk · 2026-10-20
- The Hacker NewsOpenCode Console Breach May Have Exposed OpenAI, Anthropic, and Google API Keys · 2026-10-18
- Cyera ResearchOpenCode Breach: What Happened and How to Rotate Exposed AI API Keys · 2026-10-18
- RescanaOpenCode Console Breach Exposes OpenAI, Anthropic, and Google API Keys in Credential Theft and Distillation Attack · 2026-10-18
- OrcaRouterOpenCode Console breach exposed users' AI provider API keys · 2026-10-19
- AnthropicDetecting and Preventing Distillation Attacks · 2026-01-01
- CSA AI Safety InitiativeAI Toolchain Hijacked: IDE Plugin API Key Theft · 2026-06-01
- CSA AI Safety InitiativeLiteLLM AI Gateway: Critical Vulnerability Chain Exposes API Keys · 2026-01-01
- Cloud Security AllianceAI Controls Matrix (AICM) v1.1 · 2026-01-01
¿Esto te aplica y no sabes por dónde partir?
Revisamos tu exposición real frente a lo que describe este análisis: superficie expuesta, cobertura de detección y brechas frente a la Ley 21.663. Diagnóstico de 15 minutos, sin costo.
Agendar diagnósticoRelacionado
EE.UU. excluye a DeepSeek de compras federales por cadena de IA
La orden FASCSA no solo prohíbe productos de DeepSeek: alcanza a cualquier producto de terceros "desarrollado usando" su…
Tres plataformas de IA filtran credenciales en ataques encadenados
Fireworks AI, OpenCode y Railway reportaron intrusiones en dos semanas que expusieron llaves de OpenAI, Anthropic y Goog…
Cuatro fallas de octubre exponen el riesgo de custodios de credenciales
OpenCode, Zeabur, UpdraftCentral y la autoridad certificadora eMudhra expusieron en la misma semana credenciales que no…