Ciberseguridad

Cómo una página de documentación falsa se infiltró en el flujo de trabajo del desarrollador moderno

Autopsia técnica de un instalador falso de Claude Code que distribuye un ladrón de PowerShell que evade el cifrado vinculado a la aplicación de Chrome 144 para atacar a desarrolladores.
Cómo una página de documentación falsa se infiltró en el flujo de trabajo del desarrollador moderno

Imagine a un ingeniero de software de nivel medio llamado Alex. Son las 3:00 PM de un martes y Alex busca ahorrar veinte minutos en una tediosa tarea de refactorización. Ha escuchado cosas excelentes sobre Claude Code, la interfaz de línea de comandos de Anthropic para la codificación agéntica. Una búsqueda rápida de "install claude code" arroja un resultado patrocinado que parece indistinguible de la documentación oficial. La página es limpia, la tipografía coincide perfectamente con la estética de Anthropic y hay un comando de PowerShell simple de una sola línea listo para ser copiado y pegado en una terminal.

Alex, al igual que miles de otros desarrolladores bajo presión por cumplir los plazos, confía en el ranking del motor de búsqueda. Copia el comando, lo pega en su shell administrativo y presiona enter. Para Alex, la instalación parece proceder normalmente. Sin embargo, entre bastidores, su estación de trabajo se acaba de convertir en el punto de acceso inicial para una sofisticada campaña diseñada para extraer las credenciales de su navegador y pivotar hacia el corazón de la infraestructura de su organización.

Desde una perspectiva de riesgo, esto no es simplemente otro ataque de phishing. Es un ataque guiado de precisión contra los guardianes del reino digital. Esta campaña, detallada por primera vez el 11 de mayo de 2026 por el Centro de Ciberdefensa de Ontinue, destaca un cambio en el enfoque de los actores de amenazas. Al atacar las herramientas que los desarrolladores utilizan para construir, los atacantes están evadiendo efectivamente la puerta principal y entrando directamente a la sala de servidores.

La ilusión de la documentación canónica

La brillantez de esta campaña reside en su simplicidad. Los atacantes no solo construyeron un sitio falso; construyeron un espejo. La página de señuelo imitaba el diseño de la documentación legítima de Claude Code, pero con una desviación crítica: el comando de instalación renderizado en HTML fue alterado. Mientras que el comando genuino de Anthropic descarga desde un repositorio de confianza, la versión maliciosa apuntaba a uno de los tres dominios controlados por el operador registrados en una oleada de actividad en abril de 2026.

Cuando analicé por primera vez el tráfico de red asociado con esta campaña, noté una técnica astuta diseñada para derrotar a los escáneres automáticos de URL. Si una herramienta de seguridad, como un sandbox o un rastreador, solicitaba el archivo /install.ps1 directamente, el servidor devolvía una copia limpia y literal del instalador genuino de Claude Code. Solo servía la carga útil maliciosa cuando se detectaban encabezados específicos o comportamientos similares a los de un navegador. Es el equivalente digital de un caballo de Troya que solo abre su trampilla una vez que está a salvo dentro de los muros de la ciudad.

Desacoplando el ataque: la división nativa de PowerShell

Una vez ejecutado, la terminal de la víctima no solo instala una herramienta de codificación; obtiene un cargador de PowerShell de 600 KB. Este script está fuertemente ofuscado, una táctica común, pero la forma en que maneja el robo real es lo que llamó mi atención. Hablando proactivamente, la mayoría de las reglas de detección de comportamiento buscan actividad sospechosa en un solo proceso. Si un binario nativo comienza a realizar conexiones de red y a leer bases de datos del navegador, se activan las alarmas.

Para eludir esto, los atacantes utilizaron un diseño de arquitectura dividida. El cargador de PowerShell realiza el trabajo pesado para el entorno: enumera los navegadores de la familia Chromium como Chrome, Edge, Brave, Vivaldi y los más recientes Arc o Perplexity Comet. Luego, inyecta de forma reflectiva un pequeño asistente nativo de 4608 bytes en un proceso de navegador legítimo y activo.

Este asistente es una clase magistral de minimalismo. No contiene importaciones de red, archivos o criptografía. En un aislamiento forense, el binario parece casi inerte. Su único propósito es actuar como un puente, invocando las interfaces internas del navegador para recuperar las claves de cifrado. Para cuando el script de PowerShell utiliza esas claves para leer las bases de datos SQLite que contienen cookies y contraseñas, el acto "malicioso" se ha distribuido a través de diferentes capas del sistema operativo, lo que lo hace casi invisible para las herramientas tradicionales de detección y respuesta en puntos finales (EDR).

Evadiendo la bóveda digital: el exploit IElevator2

El núcleo arquitectónico del ataque se dirige a una característica de seguridad específica en los navegadores modernos: el Cifrado Vinculado a la Aplicación (App-Bound Encryption). Introducido para detener exactamente este tipo de robo, el cifrado vinculado a la aplicación vincula los datos sensibles a la identidad de la aplicación, impidiendo teóricamente que un script de terceros simplemente tome la carpeta de cookies y huya.

Sin embargo, los actores de amenazas detrás de esta campaña han estado siguiendo los cambios de Chromium con un enfoque depredador. A los 60 días del lanzamiento de Chrome 144 en enero de 2026, ya habían adaptado su cargador para atacar la interfaz COM IElevator2. En términos de integridad de datos, esta interfaz está destinada a ser un servicio de alto privilegio que permite al navegador realizar tareas específicas. El malware engaña a este servicio para que entregue la clave maestra, convirtiendo efectivamente los propios mecanismos de seguridad del navegador en su contra.

En mi experiencia analizando cargadores de nivel APT, este nivel de agilidad es raro. Sugiere un operador que no es solo un "script kiddie" que usa kits filtrados, sino un equipo de desarrollo con un enfoque dedicado a derrotar la hoja de ruta de seguridad de Chromium. Curiosamente, dejaron atrás una firma de su propia falibilidad: un error de transcripción en el identificador IElevator2 de Edge embebido. Se transpusieron dos nibbles en el campo Data3. Esto hace que la llamada inicial de alta tecnología falle, obligando al malware a recurrir a una interfaz más antigua y ruidosa. Para un defensor, ese identificador malformado es un regalo: una firma de detección de alta confianza que puede usarse para cazar esta familia específica en toda la red.

El desarrollador como un punto de pivote de alto valor

A menudo hablamos del firewall humano en el contexto de asistentes administrativos o equipos de finanzas, pero los desarrolladores representan un riesgo único y generalizado. Como señaló Vineeta Sangaraju, ingeniera de investigación de IA en Black Duck, una estación de trabajo de desarrollador comprometida rara vez es el estado final para un atacante. Es un pivote.

Los desarrolladores suelen tener un acceso amplio a activos críticos para la misión. Sus máquinas contienen las cookies de sesión para GitHub, AWS y los pipelines internos de CI/CD. Tienen claves SSH para servidores de producción y tokens de API que eluden la autenticación multifactor. Una estación de trabajo comprometida no se queda contenida; se propaga en cascada. Pivota hacia los repositorios de código fuente donde los atacantes pueden inyectar puertas traseras en el software posterior, un movimiento que hemos visto en ataques sistémicos a la cadena de suministro como SolarWinds.

Además, el malware incluye una lista de "exclusión regional". Si el cargador detecta que el host está en Rusia, Irán u otras naciones de la CEI, se cierra silenciosamente. Este es un sello común de los actores que operan desde esas regiones y que desean evitar el escrutinio de las fuerzas del orden locales, agregando una capa de contexto geopolítico al análisis técnico.

Construyendo una defensa resiliente contra ataques a herramientas

Entonces, ¿cómo nos defendemos contra un ataque que parece una parte legítima del flujo de trabajo de un desarrollador? Dejando de lado los parches —ya que este malware explota interfaces válidas en lugar de vulnerabilidades sin parchear— debemos observar los controles arquitectónicos.

Hablando proactivamente, la contramedida más eficaz es aplicar el Modo de Lenguaje Restringido (CLM) de PowerShell. Esto limita la capacidad de los scripts para invocar el tipo de llamadas complejas a la API de COM y Win32 requeridas para la inyección reflectiva. Cuando se combina con un registro robusto de bloques de scripts, permite a los analistas del SOC ver el "cómo" de un ataque incluso si el "qué" está ofuscado.

Además, debemos tratar la estación de trabajo del desarrollador como un entorno de alta confianza y alto riesgo. Esto significa:

  1. Implementar filtrado de contenido web que bloquee dominios recién registrados (de menos de 30 días de antigüedad), lo que habría neutralizado esta campaña específica.
  2. Pasar de cookies de sesión de larga duración a tokens de corta duración vinculados al hardware para el acceso a la infraestructura en la nube.
  3. Educar a los equipos de ingeniería sobre los riesgos de las instalaciones de "copiar y pegar" de fuentes no canónicas, incluso cuando aparecen en los resultados de búsqueda.

Al final del día, la seguridad es un juego del gato y el ratón que se juega a la velocidad del ciclo de lanzamiento de Chrome. Esta campaña demuestra que los actores de amenazas ya no están esperando por "zero-days"; simplemente están esperando a que copiemos la línea de código incorrecta.

Conclusiones clave para líderes de TI y seguridad

  • Verificar la fuente: Asegúrese de que los desarrolladores solo obtengan herramientas de CLI y paquetes de repositorios oficiales y verificados (por ejemplo, lanzamientos directos de GitHub o registros oficiales de npm/pip) en lugar de espejos de documentación de terceros.
  • Monitorear la actividad COM: Use herramientas EDR para monitorear procesos inusuales que llamen a las interfaces IElevator e IElevator2, buscando específicamente la firma IID malformada de Edge.
  • Implementar la caza de persistencia: Audite las tareas programadas para intervalos de sondeo inusuales (por ejemplo, una vez por minuto) que apunten a dominios C2 externos no corporativos.
  • Aplicar el privilegio mínimo: Use Windows AppLocker o tecnologías similares para evitar que los cargadores de PowerShell no autorizados se ejecuten en un contexto de alto privilegio.

Fuentes:

  • Ontinue Cyber Defense Center: Threat Intelligence Report (May 2026)
  • Chromium Project: App-Bound Encryption Technical Documentation
  • MITRE ATT&CK: T1059.001 (Command and Scripting Interpreter: PowerShell)
  • NIST SP 800-207: Zero Trust Architecture

Descargo de responsabilidad: Este artículo es solo para fines informativos y educativos. No reemplaza una auditoría de ciberseguridad profesional, un análisis forense o un servicio de respuesta ante incidentes. Consulte siempre con un profesional de seguridad calificado antes de realizar cambios significativos en la postura de seguridad de su organización.

bg
bg
bg

Nos vemos en el otro lado.

Nuestra solución de correo electrónico cifrado y almacenamiento en la nube de extremo a extremo proporciona los medios más potentes para el intercambio seguro de datos, lo que garantiza la seguridad y la privacidad de sus datos.

/ Crear una cuenta gratuita