El repositorio falso de Qwen en GitHub distribuye malware StealC mediante un archivo ZIP de 487 KB

iconMetaEra
Compartir
AI summary iconResumen
Un repositorio falso de Qwen en GitHub está propagando malware StealC a través de un archivo ZIP de 487 KB, etiquetado falsamente como un modelo de 27 mil millones de parámetros. El archivo incluye un intérprete LuaJIT y código ofuscado que se conecta a un servidor C2. El malware roba credenciales de navegador, cuentas de correo, tokens de Steam y datos de monederos de criptomonedas. Los atacantes han rotado IPs, nombres de archivo y claves de cifrado para evitar la detección. Mientras los datos de inflación siguen siendo una preocupación clave en el panorama general de noticias de criptomonedas, se insta a los usuarios a verificar las fuentes antes de descargar archivos.

Contexto

Descarga un modelo grande de código abierto, y lo que normalmente te preocupa es si funcionará correctamente y si los pesos son auténticos. Esta vez, lo que realmente debes temer está en otro lugar: un repositorio etiquetado como de 27B parámetros, pero que en tus manos solo contiene 487 KB: dentro no hay pesos, sino un troyano de robo de datos.

El 20 de agosto de 2026, el repositorio de GitHub unburdened-jackinthebox365/qwen38-uncensored subió un archivo llamado uncensored_qwen_v2.6.zip a la carpeta assets/, con un tamaño de 487,153 bytes. El repositorio lo presentó casi impecablemente: la página principal afirma ofrecer pesos cuantizados locales de Qwen 3.8 27B, y el README enfatiza ejecución completamente en línea offline, sin telemetría y que los datos no salen del equipo, cada frase impacta directamente en los usuarios de modelos locales. Cuatro días después, el 24 de agosto, el README se modificó nuevamente: el botón de descarga, los enlaces de descarga en el cuerpo del texto, junto con los dos enlaces externos originales que apuntaban a los sitios web oficiales de Ollama y LM Studio, se cambiaron todos para dirigir al mismo enlace raw del ZIP.

Hasta aquí, las inconsistencias son evidentes. Un modelo cuantizado Q4_K_M de 27B parámetros generalmente ocupa más de 16 GB al guardarse, y el mensaje impreso por bin/install.cjs del repositorio también indica aproximadamente 16.8 GB. Sin embargo, los activos recibidos en realidad solo suman 487 KB; al descomprimirlos, solo hay tres archivos: Application.cmd, util.exe y cert.txt, sin ningún peso GGUF.

Basándonos en esto, determinamos que se trata de un repositorio falso que se hace pasar por Qwen para distribuir archivos; el proyecto oficial de Qwen no ha sido comprometido. El script de instalación de Node.js en el repositorio aparentemente implementa el flujo «escribir Modelfile → llamar a ollama create», pero no se realizó una validación dinámica en esta ocasión; el código principal del repositorio mantiene una apariencia normal de proyecto, mientras que el ZIP malicioso se presenta como un activo de descarga en assets/. Solo revisar el código fuente convencional sin descomprimir los activos de descarga podría hacer que se pasara por alto esta vía de entrada.

Este artículo se basa principalmente en evidencia estática y no ejecutó ninguna muestra. Las solicitudes C2 se reprodujeron con datos de anfitrión simulados, solo se leyeron las respuestas y se descargaron las cargas útiles, sin ejecutar el contenido descargado ni acceder al punto final final de carga; las descripciones de comportamiento en el artículo indican que el código contiene implementaciones o rutas de llamada correspondientes, pero no significa que estas operaciones hayan ocurrido en un anfitrión real.

MistEye response

MistEye es un sistema de inteligencia de amenazas Web3 y monitoreo de seguridad dinámico desarrollado internamente por SlowMist, que integra capacidades de monitoreo de seguridad y agregación de inteligencia para proporcionar a los usuarios alertas de riesgo en tiempo real y protección de activos.

En este incidente, MistEye realizó un análisis estático del repositorio engañoso, los activos descargados y la carga posterior, reprodujo las solicitudes C2 utilizando información de host simulada, y guardó las respuestas y evidencias de descarga, reconstruyendo así la cadena de distribución en múltiples etapas y extrayendo IOC de red y archivos. El 26 de agosto se verificó nuevamente la disponibilidad del C2 y el cambio de infraestructura de distribución, además de realizar una comparación de comportamiento offline de 29 archivos ZIP similares distribuidos en 23 repositorios. Los IOC relacionados ya están integrados en el motor de detección de amenazas de MistEye.

A continuación, el análisis técnico detallado.

Tres archivos en el paquete de 487 KB

El contenido completo de Application.cmd es un comando:

iniciar util.exe cert.txt

Contando los caracteres de nueva línea, son 25 bytes. No descomprime el modelo ni llama a Ollama; simplemente hace que util.exe en el mismo directorio lea un archivo de texto, transfiriendo el control al script Lua en cert.txt. No hay otros archivos en el archivo comprimido; estos son los únicos tres contenidos.

util.exe tiene 759,808 bytes y es el intérprete LuaJIT 2.1 renombrado. LuaJIT en sí mismo es un entorno de ejecución Lua utilizado por numerosos software legítimos. La ruta PDB residual en el PE indica D:\a\defold\...\luajit.pdb, que apunta al resultado del empaquetado del motor de juegos Defold. El análisis estático no detectó comportamientos maliciosos independientes de scripts en util.exe; este archivo solo se encarga de ejecutar el Lua ofuscado en el mismo directorio.

El archivo cert.txt tiene un nombre que sugiere un certificado, pero su contenido es un script Lua de una sola línea de 182,116 bytes. El script completo no contiene ningún salto de línea; todas las cadenas están divididas en escape decimal y llamadas a tablas, por lo que al leerlo directamente solo se ven números y nombres de variables cortas. A continuación se muestra un pequeño fragmento inicial del archivo, dividido en líneas para facilitar la lectura y truncado con puntos suspensivos:

Las primeras dos funciones se encargan de obtener caracteres por índice y reordenarlos; a partir de la tercera línea se encuentra la tabla de cadenas desordenadas. Cientos de cadenas en texto plano en el script se almacenan de esta forma y se vuelven a unir en tiempo de ejecución.

La entrada de riesgo no se encuentra en el llamado programa modelo. El archivo comprimido contiene un intérprete genérico y un archivo de texto, y toda la lógica maliciosa se encuentra en cert.txt.

C2 completó la cadena de lanzamiento subsequente

Después de desconfundir en modo offline, la estructura de cert.txt quedó clara. Mantiene una tabla de cientos de cadenas, donde todo el texto plano se divide en escapes numéricos y se restaura byte a byte en tiempo de ejecución. El script utiliza LuaJIT FFI para analizar y llamar a APIs de Windows como VirtualAlloc y CreateThread.

El cargador lleva el número 845. Tras iniciarse, recopila el nombre del host, el nombre de usuario, el GUID y la versión del sistema, toma una captura de pantalla mediante BitBlt y la guarda como BMP, luego realiza una solicitud al servicio de geolocalización por IP, y envía todo esto como una solicitud POST multipart al IP hardcodeado 217[.]119[.]129[.]122. A continuación, se muestra la solicitud real que se envió según el script que reconstruimos:

La cadena después de /api/ se decodifica como el ID del cliente 517b7c5e5663656a057f. La captura de pantalla se encuentra en la sección file; los que comienzan con BM son precisamente los encabezados BMP; la información del host se encuentra en la sección data, ambas en la misma solicitud. Después de decodificar data, se obtienen valores simulados como computer=SIMULATED-PC&user=simulated-user&query=203.0.113.10, que no corresponden a ningún host real.

Las tareas enviadas por el servidor se procesan según la extensión del archivo, abarcando cuatro tipos de cargas: cargas ejecutadas directamente en memoria, programas independientes, DLL y scripts. Un solo cargador puede manejar casi todos los formatos de carga comunes. El script también incluye exclusiones de Defender, persistencia mediante tareas programadas y retroalimentación de finalización de tarea; estas tres funciones se encuentran dentro de ramas condicionales y se activan según la configuración del cargador del servidor y las condiciones locales. La configuración obtenida en esta ocasión solo activó la persistencia, mientras que las demás están desactivadas. Estas son funciones activadas condicionalmente y no implican que las operaciones correspondientes ya se hayan completado en el host real.

Cuando la dirección codificada falla, el cargador tiene una ruta de respaldo. Realiza un eth_call en la cadena Polygon para leer el valor devuelto del selector 0x3bc5de30 en el contrato 0x1823A9a0Ec8e0C25dD957D0841e3D41a4474bAdc, del cual se analiza la C2 de respaldo; en esta prueba real se obtuvo 194[.]48[.]248[.]94:

El prefijo de longitud 0x14 es 20, que coincide exactamente con el número de caracteres de la dirección descifrada, lo que confirma mutuamente ambos valores. Este hex no requiere nuestro script de decodificación; se puede verificar manualmente consultando una tabla ASCII. De los cinco puntos RPC configurados en el script, tres devolvieron los mismos datos anteriores, byte por byte, uno requiere una suscripción de pago y uno rechazó directamente. Una vez que la dirección se escribe en el contrato de la cadena pública, cambiar de servidor solo requiere una transacción; bloquear individualmente la IP de respaldo actual no puede impedir que el contrato devuelva nuevas direcciones en el futuro.

Después de corregir el formato de la solicitud según el guión, el beacon simulado 845 recibió un HTTP 200 y un JSON de 1248 bytes.

Los campos de respuesta están codificados en tres capas, y la dirección de decodificación es Base64 → hex en minúsculas → XOR cíclico de 32 bytes, con la clave XOR ECe6VGLRJum2qYtl79OiOU7aHot7Zhbn escrita directamente en el script. A continuación, se muestran dos segmentos: el contenido de la respuesta antes y después de la decodificación, cada uno truncado a los primeros 56 caracteres:

Se resolvió una estrategia de loader y una tarea:

El campo pump controla si se utilizan datos aleatorios para ampliar el archivo de salida hasta el tamaño especificado por el servidor; en esta tarea, este interruptor está desactivado.

Descarga un archivo llamado `tool.log` a `%TEMP%\dist.lua` y lo ejecuta. Este archivo tiene 396,616 bytes y está compuesto completamente por hexadecimal ASCII; al decodificarlo en hex y aplicar XOR, se obtienen 198,308 bytes de Lua confuso. Este es el segundo cargador, número 847, con el C2 inicial cambiado a `217[.]119[.]129[.]97`, y su disposición confusa es isomórfica a la del 845. Tras ejecutar el cargador 847 con los mismos datos de host simulados, este envía un beacon a `217[.]119[.]129[.]97`, y el servidor responde con dos tareas.

En ambas tareas, una sigue siendo `tool.log` y la otra apunta a `verb.log` en el mismo repositorio; la ruta de destino se escribe como `AppData\..\Local\Programs\Chromium\Application\Chromium.exe`. El `..` intermedio atraviesa la ruta hasta LocalAppData, disfrazando finalmente el nombre del archivo como el programa principal del navegador Chromium.

tool.log, verb.log y los dos PE posteriores provienen de la respuesta del C2 y la descarga en disco; estos archivos no estaban presentes en el ZIP original. El ZIP en sí solo demuestra que el cargador tiene capacidad de descarga y ejecución; las respuestas del C2 guardadas muestran que, en el momento de la recopilación, el servidor envió tareas de descarga posteriores al loaderId 845.

Carga StealC descifrada por verb.log

Desempaquetar y cargar

verb.log de 3.089.408 bytes, también en ASCII hex, con la cadena de transformación: hex/XOR → PE externo → Base64URL/AES → PE interno. Al descifrar con la misma clave XOR se obtienen 1.544.704 bytes de un PE externo de 64 bits, cuyo segmento de recursos contiene un texto Base64URL que, al decodificarse, produce 797.728 bytes de texto cifrado AES-256-ECB. La clave bFYh8UMQGZOBUlvrpS3M4ZJybbubVbvg se deriva estáticamente del PE externo a partir de dos matrices constantes; al descifrarla se obtienen otros 797.728 bytes correspondientes a un segundo PE de 64 bits.

El PE externo mapea manualmente el PE interno dentro de su propio proceso: asigna memoria, copia encabezados y secciones, corrige reubicaciones y tablas de importación, crea un hilo y lo inicia con el punto de entrada. La cadena de llamadas estática no incluye API de inyección entre procesos como CreateProcess, WriteProcessMemory, SetThreadContext o ResumeThread: todo el proceso es una carga reflexiva dentro del proceso.

Verificación del entorno

La carga interna primero verifica el entorno: si el idioma predeterminado del sistema es ruso, ucraniano, bielorruso, kazajo o uzbeko, sale inmediatamente; luego utiliza un nombre Event generado a partir de la información del host para controlar la instancia única, y verifica la fecha de caducidad incrustada; solo después de superar todas estas comprobaciones entra en la lógica principal.

Objetivo de recolección

Navegadores: Chrome, Edge, Brave obtienen datos de inicio de sesión, cookies, historial y bases de datos relacionadas; Firefox llama a la interfaz NSS para descifrar la información de inicio de sesión guardada. Cuando la base de datos está bloqueada, se utiliza Restart Manager para finalizar los procesos que la ocupan.

Correo y operaciones: credenciales de cuentas de Foxmail y Outlook, información de sesiones de WinSCP, donde las sesiones de WinSCP corresponden directamente a los servidores a los que la víctima tiene acceso.

Steam: Iniciar sesión, configurar, tokens y archivos de sentinel.

A partir de Chrome 127, las cookies y las contraseñas guardadas están protegidas por App-Bound Encryption, con las claves gestionadas por servicios a nivel del sistema; copiar solo el archivo de base de datos no permite obtener el texto plano. Esta carga útil incluye un PE auxiliar incorporado que utiliza APC Early-bird para inyectarse en chrome.exe, brave.exe o msedge.exe suspendidos; el módulo auxiliar lee la clave App-Bound cifrada dentro del proceso del navegador y la exporta como clave de 32 bytes en texto plano mediante la interfaz del servicio COM de elevación correspondiente a cada navegador, permitiendo que los archivos de base de datos recopilados anteriormente vuelvan a ser legibles.

La recopilación de monederos es completamente impulsada por el servidor: el recolector recursivo asigna tareas de archivos recibidas desde C2 según su tipo, y la rama de wallets busca en el directorio local según el nombre de la tarea y el nombre del archivo; C2 también puede enviar IDs extendidos para recopilar el almacenamiento y IndexedDB de extensiones de Chromium. Los archivos de muestra no contienen nombres de marcas de monederos ni rutas de instalación, ni implementaciones para analizar mnemónicos o claves privadas como BIP39 o secp256k1: qué monedero se recopila se decide en el momento en que el servidor envía la tarea, y la muestra estática no enumera la lista de objetivos de esta ronda.

Subir y atribuir

La carga también incluye funciones como capturas de pantalla, recopilación de información del sistema y lista de procesos, descarga y ejecución secundaria mediante PowerShell, escalada de privilegios y eliminación automática al salir.

La carga de datos se realiza mediante POST JSON en fragmentos de 512 KiB. El punto final de carga está almacenado en el archivo cifrado con RC4 y luego codificado en Base64; al descifrarlo con la clave de configuración 55uUe45tr1x1xy1lSK se obtiene http[:]//89[.]169[.]12[.]194, y el cuerpo de la solicitud se cifra adicionalmente con otra clave RC4.

StealC es un troyano recolector de información para Windows especializado en robar credenciales de navegadores, cookies, billeteras criptográficas y otros datos sensibles, enviándolos al C2 del atacante. La gama de recopilación del payload interno, la ayuda de descifrado App-Bound, las ramas de billetera y la carga cifrada con RC4 coinciden con las características conocidas de StealC, por lo que lo clasificamos como StealC.

Si se obtienen exitosamente estos materiales, las consecuencias varían: las cookies del navegador permiten el secuestro de sesiones iniciadas, las credenciales de correo y Steam llevan a la pérdida de cuentas, las sesiones de WinSCP comprometen los servidores administrados por la víctima; una vez que las claves privadas o las frases de recuperación de billeteras se exponen, la transferencia de activos no puede revertirse.

Revisar y confirmar que las instalaciones de distribución están rotando.

El 26 de agosto, volvimos a enviar las tres balizas con los mismos datos del servidor de simulación. Los tres puntos finales devolvieron HTTP 200, y el campo de la política del cargador permaneció sin cambios. El cambio ocurrió en la dirección de descarga dentro de la tarea.

vs.log es idéntico byte por byte al antiguo tool.log, solo con un nombre diferente; el cargador 847 no ha cambiado. ssl.log, al descodificarse, es una nueva versión del PE externo, de 1.539.072 bytes; la dirección de entrada y el tamaño de la imagen han cambiado, y la clave AES se ha rotado a yK8-eM8KFA8Hl8cCybERmOLZupFvfCNZ.

La carga interna descifrada con la nueva clave sigue siendo de 797,728 bytes. Al comparar byte a byte con la versión anterior, el archivo solo tiene una diferencia, ubicada en el segmento de datos de solo lectura: el número de compilación enviado al servidor cambió de build5 a build1. Los puntos de subida, la clave de configuración RC4 y la clave del cuerpo de la solicitud son idénticos.

Cambiar el repositorio, cambiar el nombre del archivo, actualizar el PE externo y cambiar la clave AES invalidan el hash exacto del archivo antiguo. Si las estructuras y características de comportamiento estables aún pueden coincidir debe verificarse según reglas específicas. El cuerpo del payload de robo de datos ha permanecido estable durante estos dos días, modificando únicamente una etiqueta de versión; esta observación entre dos días de recolección no es suficiente para determinar si permanecerá inalterado durante períodos más largos.

Más repositorios maliciosos de GitHub

Además, recopilamos 29 muestras maliciosas de ZIP distribuidas en 23 repositorios de GitHub. Un examen preliminar mostró que todas estas muestras utilizan Lua como parte de su cadena de ejecución, comúnmente en forma de scripts Lua ejecutados en el mismo directorio, invocados por lanzadores .cmd o .bat que llaman a LuaJIT local o a un intérprete renombrado. Los temas de engaño de los repositorios relacionados abarcan varias categorías, incluyendo modelos y herramientas de IA, servicios MCP, scripts de desarrollo y proyectos de billeteras.

Se debe aclarar que actualmente no se ha realizado una recuperación completa del código ni un análisis de la cadena de ataque para cada una de las 29 muestras; por lo tanto, la evidencia actual solo confirma que todas presentan comportamiento malicioso y comparten la pila tecnológica Lua, pero no permite concluir que todas utilicen exactamente el mismo método de confusión, flujo de ejecución, infraestructura C2 o carga final.

Resumen

Un repositorio de GitHub falso de Qwen dirige la descarga a un ZIP de 487 KB que no contiene los pesos del modelo, sino solo un intérprete LuaJIT y un script enmascarado. La respuesta C2 guardada está asociada a una carga útil secundaria de robo de datos, que clasificamos como StealC.

El riesgo implica sesiones de navegador, credenciales de correo y operaciones, tokens de Steam y materiales relacionados con billeteras, siempre que dichos materiales se hayan obtenido con éxito. Entre dos recolecciones, el repositorio de distribución, los nombres de archivo, el PE externo y las claves AES han cambiado, mientras que la carga interna solo difiere en un carácter del número de compilación; 29 archivos ZIP similares distribuidos en 23 repositorios muestran que este esqueleto de distribución ha sido reutilizado en masa, pero la cadena completa posterior de cada variante debe confirmarse caso por caso.

Sugerencia

1. Aislar y realizar la recopilación de pruebas: cuando el host coincida con alguno de los ZIP, hashes de scripts, C2 o URLs de descarga listados en este artículo, guarde primero el origen de la descarga, el árbol de procesos, los registros de conexiones de red y los archivos descargados, antes de realizar la limpieza.

2. Verificar cambios en el host: si se encuentran registros de ejecución del iniciador o de LuaJIT y un intérprete renombrado cargando texto confuso de gran tamaño, revise las tareas programadas, la clave Run y el elemento StartupApproved, y confirme si la unidad del sistema o las extensiones .exe y .dll han sido añadidas a la lista de exclusiones de Defender.

3. Credenciales de eliminación: Al confirmar la ejecución de la muestra o el descubrimiento de cargas útiles asociadas, restablezca la sesión del navegador y las contraseñas guardadas, cuentas de correo electrónico, tokens de Steam y credenciales de sesión de WinSCP; si en el host se almacenaron claves privadas o frases semillas de billeteras, primero transfiera los activos a una nueva dirección y luego procese el host mismo.

4. Añadir detección de combinación: incluir en las reglas de monitoreo la secuencia «pequeño lanzador → LuaJIT local o intérprete renombrado → texto de una sola línea de gran tamaño en el mismo directorio →发起 HTTP request o escritura en memoria ejecutable». Esta cadena utiliza servicios legítimos; la detección debe basarse en la combinación de comportamientos y complementarse con las URLs maliciosas precisas enumeradas en este artículo, sin bloquear indiscriminadamente GitHub Raw o RPC públicos de Polygon.

IOC

IP

217[.]119[.]129[.]122

194[.]48[.]248[.]94

217[.]119[.]129[.]97

89[.]169[.]12[.]194

URL

http[:]//217[.]119[.]129[.]122/api/NTE3YjdjNWU1NjYzNjU2YTA1N2Y=

http[:]//217[.]119[.]129[.]97/api/NTE3YjdjNWU1NjYzNjU2YTA1N2Y=

https[:]//raw[.]githubusercontent[.]com/unburdened-jackinthebox365/qwen38-uncensored/main/assets/uncensored_qwen_v2[.]6[.]zip

https[:]//github[.]com/Minaadelfouad64/tools/raw/refs/heads/main/verbose/tool[.]log

https[:]//github[.]com/Minaadelfouad64/tools/raw/refs/heads/main/verbose/verb[.]log

https[:]//github[.]com/fuhuhlatoogan/mtp/raw/refs/heads/main/p/vs[.]log

https[:]//github[.]com/fuhuhlatoogan/mtp/raw/refs/heads/main/p/ssl[.]log

Dependencia maliciosa

https[:]//github[.]com/unburdened-jackinthebox365/qwen38-uncensored

https[:]//github[.]com/Minaadelfouad64/tools

https[:]//github[.]com/fuhuhlatoogan/mtp

https[:]//github[.]com/0ogata0/qwen-php-client

https[:]//github[.]com/115th-discomfited211/Awesome-Harness-Engineering

https[:]//github[.]com/123affano1/claudetrack

https[:]//github[.]com/1sustgmboab/nexonco-mcp

https[:]//github[.]com/2josEx/claude-brain

https[:]//github[.]com/428alexander9/claude-skills-marketplace

https[:]//github[.]com/45d5r/databricks-mcp-server

https[:]//github[.]com/7ossamfarid/mcp-mindmesh

https[:]//github[.]com/Bean5789/bbd2api

https[:]//github[.]com/CleverPortal/CollabNote-Fullstack-App

https[:]//github[.]com/Juanvil9941/AI-Invoice-System

https[:]//github[.]com/Kalainilavann/takeout_downloader_script

https[:]//github[.]com/Prestonflatfooted659/Void-Tools-v2.0

https[:]//github[.]com/Walloperlioncub193/Canva-Resource

https[:]//github[.]com/archontelemetered604/clash-for-windows

https[:]//github[.]com/fantastic-interpolation620/ctx-wire

https[:]//github[.]com/mikenob39wang/phone-number-location-tracking-tool

https[:]//github[.]com/recognisable-riddance165/Portable-Offline-LLM

https[:]//github[.]com/sociologisttentcaterpillarmoth213/100xdev-ci-cd

https[:]//github[.]com/soldat-panther/qq-farm-cdp-auto

https[:]//github[.]com/thaddeusprobabilistic193/Xault-Wallet

https[:]//github[.]com/twelfth-puerperium297/tokenoptim

https[:]//github[.]com/wasila7220/multi-model-router

Archivos maliciosos

nombre de archivo: uncensored_qwen_v2.6.zip

MD5: bf21a07ad5743d3ae9f55ff526428a0a

SHA1: 8e3391c17c3f4fb6f42594de7425df96dbbbc01e

SHA256: 36d0bac5743ed9c6858258f28f2c2f9161dc06c4d5af73eb7eda1211ea610758

nombre de archivo: Application.cmd

MD5: 17d94f34b9d15449b03bc099a637782b

SHA1: eb474f898256e8e7baaf0d63b306d1169e637c73

SHA256: 7c4f3e09c6428d0a0d7d85615695f5fedb35bb4e7180d31e1f8a1bacf22e5639

nombre de archivo: cert.txt

MD5: ccfc0f145861f23c6850c691c4be54b9

SHA1: b88ac887493f31cf9f160ddbc6bc3a2aa298a0ca

SHA256: a75561a3224d9f836058a6d0204ed2e6c1f638275a59495935cd2a5e46fd28ca

nombre de archivo: tool.log, vs.log

MD5: 8063ba8ec896b52e5e6d435cc60e82f7

SHA1: f445bd4c5b65b7e013ec518f34f4cd64676201d2

SHA256: 7ebbb61733d8aefcf9401f00e8ff7e593c9f0edecb6609675aebd3eb78a5ae2d

filename: verb.log

MD5: 650a8ee5d091275040ae4dd02dcdd806

SHA1: 343d819ceb63c742912723c42fd158b82d0a90be

SHA256: 699af883d862d8949a494f69e2d300142ce506a0ac6c7a239193c111dfed241e

nombre de archivo: inner-payload.aes256-ecb-decrypted.bin

MD5: 01e433263a7fd50e812195ff4c11cc90

SHA1: ea53a41c53181374cade8d69882bb1390f0c2562

SHA256: ec981c45d494896037583c746543490176c9ce9a1482e62c4e8ab189c2650b1c

nombre de archivo: ssl.log

MD5: 9d11bce9c213924b53bcb986f07945c6

SHA1: 2abf1436933dc6b63a016661d5d16f1eda303b59

SHA256: 7b0d919bd510cbcc587cca4b74aad1e086fb1fc34882a39946e6db7d4361a746

nombre de archivo: inner-payload.build1.bin

MD5: 370f95bf40a9c9fe852b2e4bdd95689f

SHA1: 219a0e7c3907bb65ef7db7428400745570d4e105

SHA256: 5d63f3dc9371d4496ca0e728a794151978e94b69ae4b3c705cea4e67cc6cf208

nombre de archivo: client_qwen_php_v2.4.zip

SHA256: 073c6192ab4c2d5d25fc13acab4c216c96f9d5926064c534e3803bb31d527b28

filename: Engineering_Harness_Awesome_1.9.zip

SHA256: 0870fe8a4d9e64e335047e16ed1d6b0805beab9686495a1e8c247cf2e1a8e930

nombre de archivo: Software_v1.6.zip

SHA256: 71b37b48f80106fc864be7e82481cd1a2f7decfeaf1dce45abb924d7f32da933

nombre de archivo: nexonco-mcp-v3.0-alpha.1.zip

SHA256: a866d90d6f1dd82ddcd2cbef4f5550c77bb58dbda87c02eedb441a117b7d89b9

nombre de archivo: claude-brain-v1.4-alpha.3.zip

SHA256: a271231ebf6174b11aeb3337c238abc0eac44b48b5fa8d2b168883601d8cc3a5

nombre de archivo: brain_claude_2.2-alpha.1.zip

SHA256: ca4babb4444af81cf93b34436de7a4a3c8e1a93f6233bcc8753ddd868b4c9eaa

nombre de archivo: claude-skills-marketplace_v3.4.zip

SHA256: 438033226b1bd1e26db8ab71a777e74cc90b5c31310139269fe8e52308f6c938

nombre de archivo: skills-marketplace-claude-2.9.zip

SHA256: f07a4eadd43513f56ae4fdf6f6dfc966de17f06093c75c1dec0dd426668779f9

nombre de archivo: server_databricks_mcp_1.6.zip

SHA256: 66afc7d87d10dbe392898c4e5c613e0442fabb396415c2bef3a5ef2ac752c5ad

nombre de archivo: mindmesh_mcp_1.0-alpha.5.zip

SHA256: e8da8c82ccb1c6fd68e7c03187485d6ebbd07a4946a7f07cac54fef65b00d2bf

nombre de archivo: bbd-api-3.1.zip

SHA256: 3524dc4a232c76067f8b2df9adf34ae1106dcc1528e5467c1abc285fc51d1e82

nombre de archivo: Note-Collab-App-Fullstack-v3.6-alpha.5.zip

SHA256: 6f823d15658b07d6d90f292848fcdd30fe840f83d653cc34966e2fd61d9c3117

filename: Invoice_A_System_3.9.zip

SHA256: 8332d91619563e46e248f427cf489f8bd61a83124eb4c95749ce284b443a2803

nombre de archivo: downloader-script-takeout-v1.1.zip

SHA256: 8412f2d2b47181f272b0c0e02fe619331e0c2c8d3b90f32e8ce08ac98aaec3f6

nombre de archivo: downloader_takeout_script_v3.8.zip

SHA256: b781102c6ff857fb45089a6b3d30c5ebb7699ec7e8771bfa0039bef28de782bd

nombre de archivo: takeout-downloader-script-galvanocauterización.zip

SHA256: 13dc7623c66d1fed51ae94b0d96e8ed45c93d893afabf9aceb4ef0a8da0243ee

nombre de archivo: Void-v-Tools-v1.7.zip

SHA256: 841d0c25137f35b60d940705ab7b5dc3e9936f37e0561934e72c5dafe93466d8

nombre de archivo: Resource-Canva-2.2.zip

SHA256: ac6a24d02209df94f56f67e7f3f19dc997f7a2625b91add1dd10cdec0a06d392

nombre de archivo: for-clash-windows-3.2.zip

SHA256: 036062622f3a1fa2718afc91f8fe4edc693b757365dfc2c0958b70fe8c84c20d

nombre de archivo: wire-ctx-2.6-alpha.1.zip

SHA256: db0640eb414a89bb62953f0aa7603557f3b8de515e7c3696156abc10f835ecef

nombre de archivo: location-tracking-tool-phone-number-v3.3.zip

SHA256: 3fc5816afde3e58bf9fcaa1b3873f2d4bc8629ee7a8341a4a4979d2729cad5e6

nombre de archivo: location_number_tracking_tool_phone_v2.5.zip

SHA256: 398ea394f9a4242ebe9fd67a5ca62445fc4a34b1731d4f99b8eea5e65a98ddcb

filename: tracking-tool-location-number-phone-3.2.zip

SHA256: b6e81d95c0c336e8b8bde3889f4df4ee17639f6ff055c631de19cab3c7efb63b

nombre de archivo: Offline_LLM_Portable_v2.1-alpha.1.zip

SHA256: 1313b6cfb1ea43367fdd845f64526b4972a3a345bb8b13cef7ebb678d59b5f55

nombre de archivo: ci_cd_xdev_v2.3-alpha.3.zip

SHA256: ed1ae6799ecb1fc7c5239c4ab95b3b9de9462f21219f144a25b91b6fd430a2c2

nombre de archivo: farm-cdp-qq-auto-1.1.zip

SHA256: 6145aeacba6533e10dcea287d0fff64c48a790c58ae266ed18ea5d13c36d27ca

nombre de archivo: v3.9.zip

SHA256: a0dd4924bec9bc077b1f98ddcb45b4e07b01e63ad703c2507d822b5b5130a077

nombre de archivo: Software-Lithodes.zip

SHA256: 40c2b7b8dcfa6bfe0a199af9ea4baa00a4b8ecd73afa326702cdc4197d64bdef

nombre de archivo: model-multi-router-v3.5-beta.1.zip

SHA256: 152929ae778e6ed9f358ca8590d2155e1a04137b109a5442891e1ba3fe1a7f82

Sobre MistEye

MistEye es una plataforma de inteligencia de amenazas Web3 y monitoreo de seguridad dinámico desarrollada internamente por SlowMist, que ofrece mediante API la detección de actividades maliciosas y la alerta de riesgos en la cadena de suministro para el ecosistema de paquetes de código abierto.

Todos los paquetes maliciosos y IOC involucrados en esta acción ya están integrados en el motor de detección de amenazas MistEye. Los desarrolladores pueden realizar detecciones automatizadas de las dependencias del proyecto mediante API para determinar rápidamente si coinciden con paquetes maliciosos conocidos y obtener recomendaciones de acción.

📖 Documentación de la API: https://app.misteye.io/api-docs

🛠️ MistEye-DepScan: https://github.com/slowmist/MistEye-DepScan

Herramienta CLI ligera que escanea, con un solo comando, las dependencias del proyecto y los paquetes instalados globalmente en busca de paquetes maliciosos conocidos; admite ecosistemas npm / PyPI / Cargo / Go / RubyGems

🛠️ MistEye-Skills: https://github.com/slowmist/misteye-skills

Paquete de habilidades de seguridad para asistente de codificación AI, que activa automáticamente la detección de seguridad MistEye antes de la instalación de dependencias y el acceso a URL

🛠️ MistEye-DNS-Guard: https://github.com/slowmist/MistEye-DNS-Guard

Herramienta de protección de seguridad DNS para detectar dominios maliciosos y accesos de riesgo, identificando amenazas de red como phishing y C2

Este artículo fue elaborado por el equipo de inteligencia de amenazas de SlowMist, combinando el sistema de inteligencia de amenazas MistEye y el análisis impulsado por SlowMist Agent AI. No dude en contactarnos con cualquier pregunta o comentario.

Referencia

[1]https://x.com/OpcodeIntel/status/2091578565628502324

[2]https://www.microsoft.com/en-us/security/blog/2026/06/24/stealc-and-amadey-breaking-down-infostealers-and-the-cybercrime-services-that-deliver-them/

[3]https://security.googleblog.com/2024/07/improving-security-of-chrome-cookies-on.html

Descargo de responsabilidad: La información contenida en esta página puede proceder de terceros y no refleja necesariamente los puntos de vista u opiniones de KuCoin. Este contenido se proporciona solo con fines informativos generales, sin ninguna representación o garantía de ningún tipo, y tampoco debe interpretarse como asesoramiento financiero o de inversión. KuCoin no es responsable de ningún error u omisión, ni de ningún resultado derivado del uso de esta información. Las inversiones en activos digitales pueden ser arriesgadas. Evalúa con cuidado los riesgos de un producto y tu tolerancia al riesgo en función de tus propias circunstancias financieras. Para más información, consulta nuestras Condiciones de uso y la Declaración de riesgos.