En pocas palabras: SneakPeek es una falla de Claude Code Desktop (CVSS 8.7) que permitía robar claves SSH y credenciales de AWS sin ningún clic: bastaba pedirle a Claude que revisara un HTML de más de 256KB. Anthropic la corrigió el 17 de agosto de 2026 en Claude Desktop 1.30096.1.
La vulnerabilidad Claude Code SneakPeek permitía robar claves SSH, credenciales de AWS y tokens de desarrolladores con solo pedirle a Claude Code Desktop que revisara un HTML malicioso. Noma Labs la reportó a Anthropic el 4 de julio de 2026 y el parche final llegó el 17 de agosto.
SneakPeek es una cadena de tres fallas en el panel de vista previa de Claude Code Desktop, la aplicación de escritorio de Anthropic para trabajar con Claude Code. El panel renderiza de forma automática los archivos HTML que Claude lee o modifica. Con una puntuación CVSS de 8.7 (alta), según Noma Labs, el fallo dejaba ejecutar JavaScript sin restricciones y leer archivos locales del equipo del desarrollador.
En este artículo:
- En 30 segundos
- ¿Cómo funcionaba el ataque zero-click de SneakPeek?
- ¿Qué credenciales podía robar SneakPeek?
- ¿Cuándo se corrigió la vulnerabilidad Claude Code SneakPeek?
- ¿Cómo me protejo si uso Claude Code Desktop?
- ¿Por qué importa que un sandbox de IA falle sin que el usuario haga nada?
- ¿Qué está confirmado y qué falta verificar sobre SneakPeek?
- ¿Qué errores se cometen al evaluar el riesgo de SneakPeek?
- Preguntas Frecuentes
- Conclusión
- Fuentes
En 30 segundos
- Un HTML de más de 256KB en un repo público bastaba para disparar el ataque cuando el desarrollador le pedía a Claude que lo revisara.
- El script podía robar claves SSH, credenciales de AWS y GitHub, API keys y tokens OAuth de Claude.
- Anthropic le asignó CVSS 8.7 (alta, versión 4.0), según Noma y CSO.
- El primer parche se eludió con un Web Worker; el arreglo final salió el 17 de agosto de 2026.
- Las fuentes no reportan explotación real; es un hallazgo de investigación.
¿Cómo funcionaba el ataque zero-click de SneakPeek?
El atacante armaba un repositorio público de apariencia normal, con un HTML de más de 256KB y un script malicioso embebido. Cuando el desarrollador le pedía a Claude Code que revisara o editara ese archivo, el panel de vista previa lo renderizaba solo y el script corría, sin clic ni confirmación, según Dark Reading. La falla está en la vista previa automática de HTML de Claude Code Desktop.
El detalle técnico viene de Noma y de CSO, no del texto de Dark Reading. La app convertía los archivos de menos de 256KB en data: URLs, con una política de seguridad de contenido (CSP) que bloqueaba scripts. Los de más de 256KB los guardaba en un archivo temporal y los cargaba como file://, un camino que nunca recibía esa CSP. En Chromium, una página cargada así puede leer otros archivos locales con fetch().
El filtro de requests, que debía frenar las lecturas file://, solo se activaba cuando la vista previa hacía de proxy de un servidor de desarrollo local. Con un HTML estático leído del disco, como un reporte de cobertura de tests, quedaba apagado.
Después, la salida. El script mandaba todo a un servidor del atacante con navigator.sendBeacon(), una API web que dispara un POST en segundo plano sin que nadie lo note.
Para la prueba de concepto, Noma armó un repo con código fuente, tests y un reporte de cobertura de más de 256KB. Según el investigador, un reporte de 500KB no levanta sospechas porque esos archivos suelen traer source maps y CSS. La víctima solo tenía que hacer una consulta de rutina: mirar ese reporte.
Ojo con el término “zero-click”. El desarrollador sí tiene que pedirle a Claude que abra el archivo. Lo que no existe es un permiso, un aviso o un clic extra sobre el contenido malicioso. Esa lectura es nuestra: zero-click acá significa que no hay segunda confirmación, no que la víctima no haga nada. Cubrimos ese tema en detalle en explicadores sencillos para Claude Code.
¿Qué credenciales podía robar SneakPeek?

Según Dark Reading, el script podía robar claves privadas SSH, credenciales de AWS y GitHub, API keys y tokens OAuth de Claude, además de cualquier otro dato presente en la máquina. El informe de Noma agrega tokens de npm, credenciales de Kubernetes, autenticación de Docker registry, identidad de Git y la IP real de la víctima vía WebRTC.
Esto funcionaba porque tres fallas se encadenaban y anulaban las protecciones de sandbox que los desarrolladores daban por supuestas:
- Falta de content security policy. Los archivos de más de 256KB se cargaban como file:// y la CSP que bloquea scripts no los cubría.
- Acceso irrestricto de origen. Cargado como file://, el renderizador tenía acceso directo al sistema de archivos local, en lugar de quedar confinado a un origen aislado.
- Filtrado de requests inactivo. Con HTML estático, el filtro pensado para bloquear lecturas file:// no se activaba.
El CVSS 8.7 (alto, v4.0) lo asignó Anthropic, según Noma y CSO, y no figura en el texto de Dark Reading, que habla de una falla de “alta severidad”. Noma agrega que Anthropic trató el impacto como equivalente a ejecución de código en el host. Al 15 de octubre de 2026 no hay CVE publicado en las fuentes que revisamos.
¿Cuándo se corrigió la vulnerabilidad Claude Code SneakPeek?
Anthropic cerró la falla con un parche final el 17 de agosto de 2026, 44 días después del reporte del 4 de julio (el cálculo de los días es nuestro). Antes hubo un primer parche que los investigadores de Noma lograron eludir, y eso obligó a Anthropic a rehacer el arreglo con cambios arquitectónicos más profundos.
La cronología, según Noma y Dark Reading:
- 4 de julio: Noma reporta la falla con prueba de concepto completa.
- 9 de julio: Anthropic la clasifica con CVSS 8.7 y, según Dark Reading y el comunicado de prensa de Noma, despliega una primera mitigación.
- 24 de julio: Noma muestra que un Web Worker creado desde una URL blob: esquiva el filtro.
- 3 o 5 de agosto: Anthropic confirma que el arreglo es incompleto. El blog de Noma dice 3 de agosto; el comunicado de prensa dice 5.
- 17 de agosto: sale el parche final.
Hay otra discrepancia: el blog de Noma ubica el parche inicial y el pedido de retest el 24 de julio, mientras que Dark Reading lo pone el 9. Tomalo con pinzas y no cites una sola fecha para el primer fix. Para otro ángulo, tenemos una comparativa de una generación anterior de modelos, cómo se compara Claude con Gemini 2.5, que conviene leer sabiendo que quedó atrás en versiones.
Noma menciona la corrección en Claude Desktop 1.30096.1 y posteriores, por auto-actualización. En las fuentes que revisamos, ese número aparece solo en el informe de Noma, así que confirmalo en las notas de versión oficiales de Anthropic. Sobre el aviso, Noma lo lista como GitHub Advisory y CVE pendientes, y CSO dice que Anthropic preparaba el advisory y pidió el CVE. No verificamos que estén publicados.
Anthropic y Noma coordinaron la divulgación. Anthropic no respondió de inmediato al pedido de comentarios de CSO.
¿Cómo me protejo si uso Claude Code Desktop?
Verificá que Claude Code Desktop esté en una versión posterior al parche (Noma menciona 1.30096.1 o superior), dejá activa la auto-actualización y sacá de tu máquina las credenciales de larga duración. Esas son, en esencia, las recomendaciones de Eli Ainhorn, investigador de Noma, en Dark Reading y CSO.
Bajado a pasos concretos:
- Actualizá la app. Comparé la versión instalada con la que indican las notas de versión de Anthropic.
- Usá credenciales temporales. Ainhorn recomienda tokens con alcance limitado y de corta vida; así el script habría encontrado mucho menos para llevarse.
- Rotá si hubo exposición posible. Si antes del 17 de agosto le pediste a Claude Desktop que revisara HTML de un repo ajeno, rotar claves SSH, tokens de GitHub y npm y credenciales de AWS es una precaución razonable. Es consejo nuestro, no de las fuentes.
- Sumá visibilidad en runtime. Ainhorn dice que para empresas con agentes autónomos en producción ya es estándar contar con protección y monitoreo en tiempo de ejecución.
Una propuesta editorial para chequear tu exposición (no viene de Noma ni de Anthropic): listá los HTML grandes en los repos de terceros que clonaste. No sabe si el archivo era malicioso ni si el script corrió, solo te dice dónde mirar. Dejé 200KB como margen, porque las fuentes no precisan el corte exacto en bytes.
# PowerShell
Get-ChildItem -Recurse -Filter *.html | Where-Object Length -gt 200KB | Select-Object FullName, Length
find . -name "*.html" -size +200kLas fuentes tampoco informan indicadores de compromiso ni casos de explotación real, y nosotros no vamos a inventarlos. Más contexto en la comparativa entre Claude y GPT-4o.
¿Por qué importa que un sandbox de IA falle sin que el usuario haga nada?
Importa porque el control que los desarrolladores daban por hecho no cubría el camino por donde corrió el script. Según CSO, el código se ejecutó en el proceso de renderizado de la vista previa y no como acción del agente de IA, así que los controles pensados para el modelo no lo veían.
“Las protecciones eran reales, solo que no cubrían todos los caminos”, dijo Eli Ainhorn, investigador senior de vulnerabilidades de IA en Noma, a CSO (traducción nuestra del original en inglés).
Crystal Morin, de Sysdig, agregó en CSO que los logs del agente no necesariamente registrarían esa ejecución, y que las lecturas de archivos y las conexiones salientes se ven en la capa de runtime, si hay monitoreo ahí.
Ahora, la parte opinable. Ainhorn sostiene en Dark Reading que habrá más vulnerabilidades sigilosas en entornos que se asumen seguros, y que el proveedor del modelo no puede ser también tu único proveedor de seguridad. Es una opinión de un investigador cuya empresa vende seguridad para agentes (según su propio comunicado), no un hallazgo verificado. Dark Reading también cita, como contexto, un artículo de Satya Nadella sobre un “freno de emergencia” de ciberseguridad en IA y un estudio de Anthropic sobre autorreplicación; no los verificamos por nuestra cuenta.
Un ejemplo hipotético, basado en la prueba de concepto de Noma: clonás un repo público para ver cómo resuelven los tests, abrís Claude Code Desktop, le pedís que te resuma el reporte de cobertura, el panel renderiza el HTML sin avisarte, el script lee tus claves SSH y tus credenciales de AWS, las manda a un servidor ajeno y vos seguís convencido de que todo pasó dentro de un entorno aislado. Esto se conecta con lo que analizamos en diferencias entre GPT-5 y Claude.
Para equipos de desarrollo en Argentina, o donde sea, la regla práctica es tratar el contenido de repos de terceros como no confiable cuando lo abrís con un agente. Clonar para leer no es lo mismo que pedirle a una herramienta que lo renderice en tu máquina.
¿Qué está confirmado y qué falta verificar sobre SneakPeek?
Confirmado por Noma y reportado por Dark Reading y CSO:
- La cadena de tres fallas y el bypass con Web Worker desde una URL blob:.
- El CVSS 8.7 (alta, v4.0) asignado por Anthropic, según Noma y CSO.
- El parche final del 17 de agosto de 2026 y la colaboración entre Anthropic y Noma.
Pendiente o sin verificar:
- CVE y GitHub Security Advisory: figuran como pendientes en las fuentes.
- Fecha exacta del primer parche y de la confirmación del bypass: las fuentes difieren.
- Número de versión corregida: solo lo menciona el informe de Noma.
- Explotación real: ninguna fuente la reporta, y tampoco descarta que haya pasado.
¿Qué errores se cometen al evaluar el riesgo de SneakPeek?
- Creer que “es solo un HTML”. Un HTML de más de 256KB con JavaScript embebido corría sin CSP en este caso. Corrección: tratá el archivo como código ejecutable.
- Confiar en que el “sandbox” cubre todo. Las protecciones existían, pero no cubrían la ruta file://. Corrección: preguntate qué pasa en los caminos que el control no contempla.
- Rotar solo la clave de AWS. Noma lista también npm, GitHub, Kubernetes, Docker y los tokens OAuth de Claude. Corrección: inventariá todo lo que vive en tu máquina antes de rotar.
- Dar por resuelto el tema tras el primer parche. El primero se eludió. Corrección: confirmá que tu versión sea la del arreglo final.
- Concluir que te hackearon porque abriste un repo. Las fuentes no reportan explotación real. Corrección: revisá exposición, no asumas compromiso.
Preguntas Frecuentes
¿Qué es SneakPeek de Claude Code Desktop?
SneakPeek es el nombre que Noma Labs le dio a una cadena de tres fallas en el panel de vista previa de Claude Code Desktop, con CVSS 8.7 (alta). Permitía ejecutar JavaScript sin restricciones al renderizar un HTML de más de 256KB y leer archivos locales de quien lo abría.
¿Qué datos podía robar la vulnerabilidad de Claude Code?
Según Dark Reading, claves privadas SSH, credenciales de AWS y GitHub, API keys y tokens OAuth de Claude. Noma suma tokens de npm, credenciales de Kubernetes, autenticación de Docker registry, identidad de Git y la IP real de la víctima vía WebRTC.
¿Ya está corregida la falla SneakPeek de Anthropic?
Sí, según Noma, que ubica el parche final el 17 de agosto de 2026, en Claude Desktop 1.30096.1 y posteriores vía auto-actualización. El primer parche se había eludido, y al 15 de octubre de 2026 el CVE seguía sin publicarse en las fuentes que revisamos.
¿Qué significa que una vulnerabilidad sea zero-click?
Una vulnerabilidad zero-click se explota sin que la víctima haga clic ni apruebe nada sobre el contenido malicioso. En SneakPeek, el desarrollador solo tenía que pedirle a Claude que revisara el archivo, y la vista previa hacía el resto.
¿Qué hago si abrí repos de terceros con Claude Code Desktop antes del parche?
Actualizá la app y rotá las credenciales que tenías en la máquina, empezando por claves SSH, tokens de GitHub y credenciales de nube. Es una precaución, porque las fuentes no reportan explotación real.
Conclusión
La vulnerabilidad Claude Code SneakPeek ya está corregida según Noma, y el riesgo concreto de hoy es de higiene: una versión desactualizada y credenciales de larga duración en la notebook. Lo que cambia es el supuesto de confianza, porque el panel que muestra un HTML era una superficie de ataque y el sandbox no cubría todos los caminos. Actualizá, usá tokens temporales y no le pidas a un agente que renderice contenido de un repo ajeno sin pensarlo dos veces. Cuando salgan el CVE y el advisory, contrastá las fechas y la versión corregida con la fuente oficial.
Fuentes
- Noma Labs – informe técnico original de SneakPeek con cronología de divulgación
- PR Newswire – comunicado de Noma Security sobre la falla en Claude Code Desktop
- Dark Reading – cobertura de la amenaza zero-click y recomendaciones de Noma
- CSO Online – análisis del umbral de 256KB y comentarios de expertos
