SOC Prime Bias: Alto

01 Dic 2025 17:35

El ransomware Play se hace pasar por SentinelOne en la campaña de reconocimiento Grixba

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Follow
El ransomware Play se hace pasar por SentinelOne en la campaña de reconocimiento Grixba
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumen

El informe describe una operación de ransomware Play que se basa en una utilidad de reconocimiento .NET personalizada llamada Grixba, desplegada a través de RDP en un servidor Windows. Grixba se disfraza como un ejecutable de SentinelOne (GT_NET.exe) y almacena la salida del escaneo en ExportData.db. La herramienta se comunica con una dirección IP de VPN PIA y genera un archivo data.zip protegido por contraseña. La identificación temprana de estos artefactos puede detener el ataque antes de la fase de ransomware.

Análisis del Ataque de Ransomware Play

Field Effect MDR observó el binario de Grixba dejado en C:UsersPublicMusic junto con data.dat, seguido de la ejecución de GT_NET.exe y extracción de la clave XOR para decodificar inf_g.dll. Un análisis más detallado expuso interruptores de línea de comandos para reconocimiento y la creación de ExportData.db, que contiene detalles extensos del sistema. Los investigadores también recuperaron el elemento de contraseña codificada necesario para desbloquear data.zip.

Mitigación

Las medidas recomendadas incluyen mantener copias de seguridad confiables, aplicar parches de software de manera oportuna, usar firewalls DNS, hacer cumplir el uso seguro de VPN, aplicar MFA y aprovechar plataformas MDR/XDR para detectar actividades de reconocimiento tempranamente. Los equipos deben observar continuamente los artefactos y comportamientos de ejecución distintivos relacionados con Grixba.

Respuesta

Cuando se detecten GT_NET.exe, data.dat, inf_g.dll o ExportData.db, los respondedores deben poner en cuarentena el punto final, capturar evidencia volátil, derivar la contraseña del ZIP del valor incrustado y buscar movimientos laterales o preparación de ransomware. Los manejadores de incidentes también deben bloquear la dirección IP relacionada y revisar de cerca los registros de acceso RDP.

graph TB %% Class Definitions classDef action fill:#99ccff classDef malware fill:#ff9999 classDef data fill:#ccffcc %% Nodes initial_access[«<b>Acción</b> – <b>T1021.001 Servicios Remotos: RDP</b><br/>El adversario utiliza RDP para obtener acceso inicial y deja <b>GT_NET.exe</b> y <b>data.dat</b> en C:\Users\Public\Music»] class initial_access action tool_gt_net[«<b>Malware</b> – <b>Nombre</b>: GT_NET.exe<br/><b>Descripción</b>: Carga útil personalizada en .NET depositada durante la sesión RDP»] class tool_gt_net malware execution_obfusc[«<b>Acción</b> – <b>T1027.007 Resolución Dinámica de API</b><br/>La herramienta .NET ofuscada utiliza codificación Base64 y XOR para ocultar la funcionalidad»] class execution_obfusc action discovery[«<b>Acción</b> – <b>T1016 Descubrimiento de Configuración de Red del Sistema</b>, <b>T1018 Descubrimiento de Sistemas Remotos</b>, <b>T1595.001 Escaneo Activo: Escaneo de Bloques IP</b><br/>Grixba escanea la red interna, enumera hosts, software y procesos en ejecución»] class discovery action collection[«<b>Acción</b> – <b>T1560.001 Archivar Datos Recopilados: Archivar mediante Utilidad</b><br/>Los resultados recopilados se escriben en ExportData.db y luego se comprimen en un data.zip protegido con contraseña»] class collection action credential_extraction[«<b>Acción</b> – <b>T1140 Desofuscar/Decodificar Archivos o Información</b><br/>La clave XOR se decodifica para descifrar data.dat y generar la contraseña del zip»] class credential_extraction action preparation[«<b>Acción</b> – Preparación para la Siguiente Etapa<br/>La inteligencia se utiliza para escalada de privilegios y explotación de vulnerabilidades»] class preparation action %% Connections initial_access u002du002d>|deja| tool_gt_net tool_gt_net u002du002d>|ejecuta| execution_obfusc execution_obfusc u002du002d>|realiza| discovery discovery u002du002d>|conduce a| collection collection u002du002d>|produce| credential_extraction credential_extraction u002du002d>|habilita| preparation

Flujo del Ataque

Ejecución de Simulación

Requisito Previo: El Control Previo de Telemetría y Línea Base debe haber pasado.

Fundamento: 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 TTPs 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 adversario ha obtenido un punto de apoyo inicial en una estación de trabajo comprometida. Para mapear la red interna antes del movimiento lateral, descargan el binario de reconocimiento Grixba (GT_NET.exe) desde el servidor de comando y control y lo ejecutan con el conjunto de argumentos que la regla Sigma apunta. El argumento elegido -m:scanall -i:d fuerza un descubrimiento completo de hosts unidos al dominio, mientras que -i:r y -i:f enumeran comparticiones remotas y comparticiones de archivos, respectivamente. Estos argumentos son típicos de la carga útil por defecto de la herramienta y producen cadenas de línea de comandos distintas que la regla de detección monitorea.

    Pasos:

    1. Descargar la herramienta (simulada con una copia desde una carpeta de prueba).
    2. Ejecutar el binario con cada conjunto de argumentos objetivo para asegurar que la regla se active para cada caso.
    3. Dejar el proceso funcionando brevemente para permitir que el SIEM capture el evento.
  • Script de Prueba de Regresión:

    # Script de Prueba de Regresión – Ejecución de la Herramienta de Reconocimiento Grixba
    # ----------------------------------------------------
    # Supuestos:
    #   • GT_NET.exe está ubicado en C:TempGT_NET.exe (reemplazar con la ruta real)
    #   • Ejecutándose con privilegios suficientes para invocar el binario
    # ----------------------------------------------------
    
    $exePath = "C:TempGT_NET.exe"
    
    if (-Not (Test-Path $exePath)) {
        Write-Error "GT_NET.exe no encontrado en $exePath. Abortando."
        exit 1
    }
    
    # 1. Ejecutar con -m:scanall -i:d
    Write-Host "`n[+] Lanzando GT_NET.exe con '-m:scanall -i:d' ..."
    Start-Process -FilePath $exePath -ArgumentList "-m:scanall -i:d" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    # 2. Ejecutar con -i:r
    Write-Host "`n[+] Lanzando GT_NET.exe con '-i:r' ..."
    Start-Process -FilePath $exePath -ArgumentList "-i:r" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    # 3. Ejecutar con -i:f
    Write-Host "`n[+] Lanzando GT_NET.exe con '-i:f' ..."
    Start-Process -FilePath $exePath -ArgumentList "-i:f" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    Write-Host "`n[+] Ejecución completa. Verificar detección en SIEM."
  • Comandos de Limpieza:

    # Limpieza – terminar cualquier proceso GT_NET.exe persistente y eliminar el binario
    Get-Process -Name "GT_NET" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    $exePath = "C:TempGT_NET.exe"
    if (Test-Path $exePath) {
        Remove-Item $exePath -Force
        Write-Host "[+] GT_NET.exe eliminado."
    } else {
        Write-Host "[*] GT_NET.exe no presente; nada para eliminar."
    }