SOC Prime Bias: Medium

27 Apr 2026 15:22 UTC

RAT de Telegram basado en Rebex que apunta a Vietnam

Author Photo
SOC Prime Team linkedin icon Seguir
RAT de Telegram basado en Rebex que apunta a Vietnam
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumen

Un archivo CHM malicioso entregado dentro de un archivo ZIP deja un entorno de ejecución de Python falso junto con un DLL en C++ que descifra una carga útil incrustada. Esa carga útil establece persistencia a través de un secuestro del shell de Winlogon, una tarea programada y el abuso de MSBuild, luego lanza un RAT basado en .NET de Telegram. El malware se comunica con un bot de Telegram usando un token codificado y soporta ejecución de comandos, reemplazo de tokens y descarga de archivos. Se ha observado que la campaña apunta a víctimas en Vietnam y actualmente no muestra detecciones en VirusTotal.

Investigación

El análisis del archivo CHM reveló un script que descompiló el archivo, limpió PYTHONHOME, y lanzó un ejecutable de Python renombrado con un archivo de código byte compilado. Luego, el bytecode cargó un DLL que descifró un blob ENCRIPTADO de DOCX, extrajo componentes adicionales y los escribió en ubicaciones temporales. El DLL creó entradas en el registro, programó una tarea llamada Doubt, y ejecutó un MSBuild archivo XML para cargar un segundo DLL, que finalmente desplegó el RAT de Telegram en .NET. El RAT dependía de las credenciales de bot de Telegram codificadas para el mando y control.

Mitigación

Los defensores deben bloquear la ejecución de archivos CHM de fuentes no confiables y restringir el uso de hh.exe, msbuild.exe, y PowerShell para scripts no firmados o sospechosos. El monitoreo debe enfocarse en las modificaciones del registro de Winlogon Shell , la creación inusual de tareas programadas y nuevos DLLs dejados en directorios temporales. Las organizaciones también deben inspeccionar el tráfico de la API de Telegram a través de controles proxy y aplicar el principio de menor privilegio para los usuarios finales.

Respuesta

Los equipos de seguridad deben identificar e aislar los hosts afectados, recopilar evidencia volátil y extraer los DLLs maliciosos y scripts para el análisis. El valor de Winlogon Shell y la tarea programada deben ser eliminados, los archivos dejados deben ser borrados, y la configuración alterada del registro debe ser restaurada a un estado conocido como bueno. Cualquier token de bot de Telegram expuesto debe ser rotado inmediatamente, y los defensores deben continuar monitoreando para detectar actividades adicionales de comando y control. Se recomienda una investigación forense completa para determinar si se exfiltraron datos.

Flujo de Ataque

Ejecución de Simulación

Prerequisito: El Chequeo Pre-Vuelo de Telemetría y Línea Base debe haber pasado.

Justificación: 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 reflejan directamente los TTPs identificados y apuntan a generar la exacta telemetría esperada por la lógica de detección.

  • Narrativa del Ataque & Comandos

    1. Entrega: El atacante entrega un .chm archivo malicioso (nombrado UpdateHelp.chm) a la víctima.

    2. Descompilación: La víctima (o un script malicioso) ejecuta hh.exe con la -decompile bandera para extraer la carga útil incrustada:

      hh.exe -decompile C:TempPayloads C:UsersPublicUpdateHelp.chm

      Esto genera el evento de creación de proceso que la regla observa (hh.exe + -decompile).

    3. Ejecución de Carga Útil – Intérprete Renombrado: Dentro de los archivos extraídos hay un intérprete de Python renombrado (_pJifgWSwPi.exe). El atacante lo lanza a través de cmd.exe para mantener un perfil bajo:

      cmd.exe /c "C:TempPayloads_pJifgWSwPi.exe -c "import os; os.system('whoami')""

      Esto satisface la cmd.exe condición de la regla.

    4. Proxy de Binario Firmado – Msbuild: La carga útil de Python escribe un archivo .proj malicioso y luego invoca msbuild.exe para ejecutarlo, logrando persistencia o ejecución adicional de código:

      msbuild.exe C:TempPayloadsmalicious.proj /target:Build
  • Script de Prueba de Regresión

    #=============================================================
    # Simulación de Ataque Basado en CHM – Activa la Regla Sigma
    #=============================================================
    
    # Variables
    $chmPath   = "C:UsersPublicUpdateHelp.chm"
    $outFolder = "C:TempPayloads"
    $renamedPy = "_pJifgWSwPi.exe"
    $projFile  = "malicious.proj"
    
    # 1. Asegúrese de que exista la carpeta de salida
    New-Item -ItemType Directory -Force -Path $outFolder | Out-Null
    
    # 2. Simule la descompilación del archivo CHM
    Write-Host "[*] Descompilando CHM..."
    hh.exe -decompile $outFolder $chmPath
    
    # 3. Coloque una copia de python.exe (o cualquier exe benigno) como el intérprete renombrado
    Copy-Item -Path "$env:SystemRootSystem32WindowsPowerShellv1.0powershell.exe" `
              -Destination "$outFolder$renamedPy" -Force
    
    # 4. Ejecute el intérprete renombrado a través de cmd.exe
    Write-Host "[*] Lanzando intérprete renombrado a través de cmd.exe..."
    cmd.exe /c "`"$outFolder$renamedPy`" -c `"Write-Host 'Simulated payload executed'`""
    
    # 5. Cree un proyecto msbuild trivial que muestre un mensaje
    $projContent = @"
    <Project ToolsVersion='4.0' xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>
      <Target Name='Build'>
        <Message Text='Msbuild executed malicious project' Importance='High'/>
      </Target>
    </Project>
    "@
    Set-Content -Path "$outFolder$projFile" -Value $projContent -Encoding ASCII
    
    # 6. Ejecute msbuild.exe en el proyecto malicioso
    Write-Host "[*] Ejecutando msbuild.exe..."
    msbuild.exe "$outFolder$projFile" /target:Build
    
    Write-Host "[+] Simulación completa."
  • Comandos de Limpieza

    # Detener cualquier proceso restante (si aún está en ejecución)
    Get-Process -Name "_pJifgWSwPi","hh","msbuild","cmd" -ErrorAction SilentlyContinue |
      Stop-Process -Force
    
    # Eliminar archivos y carpetas generados
    Remove-Item -Recurse -Force -Path "C:TempPayloads"
    # Eliminar opcionalmente el archivo CHM si se creó para la prueba
    Remove-Item -Force -Path "C:UsersPublicUpdateHelp.chm" -ErrorAction SilentlyContinue
    
    Write-Host "[+] Limpieza completada."