
Lo que tus modelos no te cuentan
Esta semana me topé con un paper que me dejó con la boca abierta. Un grupo de investigadores logró algo que suena sacado de una película de espionaje: robar los pensamientos internos de modelos como Claude, GPT y Gemini… sin siquiera atacar al modelo directamente. La técnica se llama Stolen Thoughts y es una demostración de lo frágil que sigue siendo la «seguridad» de las APIs de IA en 2026.
Cómo funciona el truco
Acá va lo que me voló la cabeza. Cuando usas modelos con razonamiento encadenado — los que devuelven esos bloques thinking firmados y encriptados — esos bloques no son atados a tu sesión. Son portables. Es decir, puedes agarrar un trace encriptado de Claude Opus, inyectarlo en un Haiku más barato y más fácil de manipular, y el modelo débil te escupe el razonamiento completo del modelo fuerte en texto plano.
El ataque es simple y elegante: dos llamadas a la API. Primero generas un trace con el modelo frontier. Después se lo pasas a un modelo hermano más débil, le haces un jailbreak suave, y le pedís que «transcriba el razonamiento adjunto». Listo. El modelo débil te devuelve literalmente lo que el modelo fuerte pensó en secreto.
Datos reales que encontraron
Y no es teoría. Los investigadores escanearon 6.708 trayectorias públicas de agentes en GitHub y Hugging Face, encontraron 315.320 bloques de razonamiento reconstruidos, y dentro de esos bloques sacaron:
- 62 API keys (incluyendo tokens de AWS, HuggingFace y GitHub)
- 33 contraseñas
- 24 access tokens
- 30 direcciones de correo personal
- Nombres, direcciones postales, URLs internas…
Lo más grave: 64 de esos secretos aparecieron solo dentro del razonamiento oculto, en ninguna otra parte visible de la conversación. O sea, el modelo los pensó, los usó internamente, y nunca te los mostró… pero quedaron grabados en el trace encriptado que después quedó expuesto en un repo público.
Mi opinión: esto es un diseño roto, no un bug
Acá es donde me pongo pesado. Esto no es un bug de software tradicional. Es un diseño arquitectónico mal pensado. Las empresas quisieron que sus modelos «piensen en secreto» para proteger la propiedad intelectual y evitar la destilación, pero la solución que inventaron — encriptar los traces y devolverlos al cliente para que los reenvíe — es literalmente un sobre sellado que el atacante puede abrir con un modelo más barato.
En mi día a día en la pega veo mucha gente integrando APIs de IA en pipelines sin revisar qué datos quedan en los logs, en los traces, en los repos públicos. Este paper es una patada en la raja para todos los que pensaban que «la encriptación lo resuelve todo». No, no lo resuelve. Si el cliente puede reenviar el paquete encriptado a otro modelo del mismo proveedor y obtener el plaintext, la encriptación es teatro.
Qué hacer al respecto
Si eres de los que usan agentes de IA en producción, revisá tus repos. Buscá esos bloques thinking con firmas largas que parecen basura. Si encontrás uno, asumí que contiene información sensible. No los commitees. No los subas a GitHub. Y si trabajas con datos de clientes o credenciales internas, apagá el razonamiento encadenado hasta que esto se arregle de verdad.
Los proveedores ya saben del problema. La pregunta es si van a cambiar la arquitectura o solo van a poner un parche más. Mientras tanto, el riesgo es nuestro.
Fuente: Stolen Thoughts — Stealing Reasoning Traces from Proprietary LLM APIs
Fuente de inspiración: Stolen Thoughts — Stealing Reasoning Traces from Proprietary LLM APIs
